工程打包与运行
1、对springboot项目快速启动(windows版)
- 对springboot项目打包(执行maven构建指令package)
mvn package
- 运行项目(执行启动命令在cmd中)
java -jar springbootheima.jar
2、打包插件
- 使用springboot提供得maven插件可以将工程打包成可执行jar包
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
3、springboot项目快速启动(linux版)
- 基于Linux(CenterOS7)
- 安装 JDK,且版本不低于打包时使用的JDK版本
- 安装包保存在/usr/local/自定义目录中或$HOME下
- 其他操作参照Windows版进行
4、临时属性设置
-
带属性数启动springboot
java -jar springbootheima.jar --server.port=80
-
携带多个属性启动springboot,属性间使用空格分隔
-
临时属性必须是当前boot工程支持的属性,否则设置无效
-
属性加载的优先顺序
1、参看:https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-external-config
5、临时属性设置(开发环境)
- 带属性启动springboot程序,为程序添加运行属性
- 通过编程形式带参数启动Springboot程序,为程序添加运行参数
public static void main(String[] args) {
String[] arg = new String[1];
arg[0] = "--server.port=8080";
SpringApplication.run(SSMPApplication.class, arg);
}
- 不携带参数启动springboot程序
public static void main(String[] args) {
SpringApplication.run(SSMPApplication.class);
}
6、配置文件分类
- springboot中4级配置文件
1级: file : config/application.yml 【最高】
2级: file: application.yml
3级:classpath:config/application.yml
4级:classpath:application.yml - 作用
1、1级与2级留做系统打包后设置通用属性,1级常用于运维经理进行线上整体项目部署方案调控
2、3级与4级用于系统开发阶段设置通用属性,3级常用于项目经理进行整体项目属性调控
7、自定义配置文件
- 通过启动参数加载配置文件(无需书写配置文件扩展名)
1、properties与yml文件格式均支持,只是书写的格式不同
- 单服务器项目:使用自定义配置文件需求较低
- 多服务器项目:使用自定义配置文件需求较高,将所有配置文件放置在一个目录中,统一管理
- 基于springcloud技术,所有的服务器将不再设置配置文件,而是通过配置中心进行设定,动态加载配置信息
多环境开发
1、多环境开发(yaml版)
- 多环境开发需要设置若干种常用环境,例如:开发环境、生产、测试环境
- yaml格式中设置多环境使用- - -区分环境设置边界
- 每种环境的区别在于加载的配置属性不同
- 启动某种环境时,需要指定启动时使用该环境
- 多配置文件方式
1、主配置文件中设置公共配置(全局)
2、环境分类配置文件中常用于设置冲突属性(局部)
3、独立配置文件便于线上系统维护更新并保障系统安全性
2、多环境开发(properties版)
- properties文件多环境配置仅支持多文件格式
3、多环境开发分组管理
- 多环境开发使用group属性设置配置文件分组,便于线上维护管理
日志
1、日志基础操作
-
日志作用
1、编程期间调式代码
2、运营期记录信息
–记录日常运营重要信息(峰值流量、平均响应时长。。。)
–记录应用报错信息(错误堆栈)
–记录运维过程数据(扩容、宕机、报警。。。) -
日志级别
1、trace:运行堆栈信息,使用率低
2、debug:程序员调试代码使用
3、info:记录运维过程数据
4、warn:记录运维过程报警数据
5、error:记录错误堆栈信息
6、fatal:灾难信息,合并计入error
2、代码中使用日志工具记录日志
- 设置日志输出级别
# 开启debug模式,输出调试信息,常用于检查系统运行状况
debug: true
# 设置日志级别,root表示根节点,即整体应用日志级别
logging:
level:
root: debug
- 设置日志组,控制指定包对应的日志输出级别,也可以直接控制指定包对应的日志输出级别
# 设置日志组
group
logging:
:
# 自定义组名,设置当前组中所包含的包
ebank: com.itheima.controller
level:
root: warn
# 为对应组设置日志级别
ebank: debug
# 为对包设置日志级别
com.itheima.controller: debug