源码笔记
判断改类是否在项目中加载 123# 判断改类是否在项目中加载boolean present = ClassUtils.isPresent("ch.qos.logback.access.db.DBAppender", null);
springboot 源码 入口:this.webApplicationType = WebApplicationType.*deduceFromClasspath*();
springboot 会判断 他是否是
反应式web应用程序运行,并应启动嵌入式反应式web服务器
为基于servlet的web应用程序运行,并且应该启动嵌入式servlet web服务器
程序不应作为web应用程序运行,也不应启动嵌入式web服务器
123456789101112131415161718private static final String WEBMVC_INDICATOR_CLASS = "org.springframework.web.servlet.DispatcherServlet";private static f ...
Ubuntu22.04安装Docker
安装Docker离线安装文档: https://docs.docker.com/engine/install/ubuntu/#install-from-a-package下载 :https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64/
放到一个文件夹下 执行
1dpkg -i *.deb
12systemctl restart dockersystemctl enable docker
验证
12345678910111213141516171819202122232425262728293031root@ai:/tmp/docker# docker compose versionDocker Compose version v2.29.1root@ai:/tmp/docker# docker versionClient: Docker Engine - Community Version: 27.1.1 API version: 1.46 Go version: ...
Ubuntu安装ssh
12345678910111213141516171819202122232425262728# 更新软件下载源sudo apt update#安装ssh服务sudo apt install openssh-server# 开启防火墙ssh的服务端口sudo ufw allow ssh# 查看ssh服务状态systemctl status ssh# 关闭ssh服务systemctl stop ssh# 开启ssh服务systemctl start ssh# 重启ssh服务systemctl restart ssh# 设置开启自启sudo systemctl enable ssh# 关闭开机自启sudo systemctl disable ssh
ubuntu22.04 jdk8安装
在线安装在 Ubuntu 22.04 上安装 OpenJDK 8 的步骤如下:
1. 更新包索引首先,确保你的包列表是最新的:
1sudo apt update
2. 安装 OpenJDK 8然后,安装 OpenJDK 8:
1sudo apt install openjdk-8-jdk
3. 验证安装安装完成后,你可以通过以下命令验证 Java 版本:
1java -version
你应该会看到类似于以下的输出,确认 OpenJDK 8 已成功安装:
123openjdk version "1.8.0_XXX"OpenJDK Runtime Environment (build 1.8.0_XXX-...)OpenJDK 64-Bit Server VM (build 25.XXX-bXX, mixed mode)
4. 设置默认 Java 版本(可选)如果你的系统中安装了多个 Java 版本,你可以使用 update-alternatives 工具来设置 OpenJDK 8 为默认版本:
1sudo update-alternatives --confi ...
Untitled
查看系统编码
1cat /etc/default/locale
12timedatectl set-timezone Asia/Shanghaintpdate ntp1.aliyun.com
查看版本
1cat /etc/issue
Ubuntu 22.04.3 LTS \n \l
设置时区
1234567891011danny@danny-server:~$ timedatectl Local time: Sun 2023-01-29 14:10:47 UTC Universal time: Sun 2023-01-29 14:10:47 UTC RTC time: Sun 2023-01-29 14:10:47 Time zone: Etc/UTC (UTC, +0000)System clock synchronized: yes NTP service: active RTC in local TZ: no# 设 ...
ubuntu22.04 开机自启
查看系统中的自动启动脚本1ls /lib/systemd/system | grep rc-local.service
可以看到有 rc-local.service 这个文件
修改 rc-local.service 文件的权限1sudo chmod 777 /lib/systemd/system/rc-local.service
修改 rc-local.service 文件1vi /lib/systemd/system/rc-local.service
打开 ,可以看到有以下内容:
1234567891011121314151617181920212223# SPDX-License-Identifier: LGPL-2.1-or-later## This file is part of systemd.## systemd is free software; you can redistribute it and/or modify it# under the terms of the GNU Lesser General Public License as pu ...
ubuntu22.04 修改为静态ip
静态ip123456789101112131415161718# 查看网卡和子网IPip addr# 查看gatewaysudo apt install net-toolsroute -n# 配置网络,配置见00-xxx.yaml文件,文件具体名字lscd /etc/netplan/lssudo cp 00-xxx.yaml 00-xxx-bksudo vim 00-xxx.yaml# 应用新网络配置sudo netplan apply# 测试ping www.baidu.com
00-xxx.yaml
1234567891011121314network: ethernets: eth0: # 网卡名称 addresses: [192.168.76.113/20] #子网IP地址 dhcp4: false optional: true routes: - to: default via: 192.168.64.254 # 网关地址 nameservers: addresses ...
ubuntu如何对外开放端口
1.查看已经开启的端口1$ sudo ufw status
2.打开端口1234# 打开端口ufw allow 9123# 关闭端口ufw delete allow 80 #关闭80端口
3.开启防火墙1$ sudo ufw enable
4.重启防火墙1$ sudo ufw reload
5.再次查看一下端口是否已开放123456789$ sudo ufw statusStatus: activeTo Action From-- ------ ----9123 ALLOW Anywhere 9123 (v6) ALLOW Anywhere (v6)
查看端口和进程监听
1apt install net-tools -y
1netstat -tlpn
ubuntu22.04 时间同步
UBUNTU时间同步从UBUNTU16.04开始,就开始使用timedatectl/timesyncd服务进行时间同步,而不是常用的ntpdate/ntp。如果安装了chrony,那么timedatectl将会让位于chrony,避免两个同步服务出现竞争,这也同样适用于ntpd。
ntpdate已被timedatectl或chrony抛弃,因此默认不会被安装。timesyncd用于时间同步,chrony则用于更复杂的情况。
临时一次同步:chronyd −q
临时一次时间检查,不设置时间:chronyd −Q
设置时间同步 及修改系统时间 时区为上海(Asia/Shanghai)
1sudo timedatectl set-timezone Asia/Shanghai
12345timedatectl set-time "YYYY-MM-DD HH:MM:SS"timedatectl set-time "2023-11-07 10:08:00"timedatectl set-t ...
electron-vue ERROR in Template execution failed ReferenceError process is not defined 正确解决方法
错误如下1234567891011121314Html Webpack Plugin: ReferenceError: process is not defined - index.ejs:11 eval [.]/[html-webpack-plugin]/lib/loader.js!./src/index.ejs:11:2 - index.ejs:16 module.exports [.]/[html-webpack-plugin]/lib/loader.js!./src/index.ejs:16:3 - index.js:284 [test]/[html-webpack-plugin]/index.js:284:18 - task_queues.js:97 processTicksAndRejections internal/process/task_queues.js:97:5
正确解决找到./src/index.ejs
<% if (!process.browser) { %> ...