第一阶段:SpringBoot源码分析
1.1 SpringBoot 案例实现
SpringBoot默认只扫描启动类所在包及其子包。
1.2 热部署
冷启动:除了加载自身的项目类文件,还加载第三方
热部署:只加载自身的项目类文件,无需加载第三方
1.3 热部署原理分析
从官网可以查看,我们进入了插件以后,插件会监控classpath的组员变化,当classpath由变化以后,会触发重启。
该插件重启快速的原因:这里对类加载采用了两种类加载器,
对于第三方jar包采用base-classloader来加载,
对于开发人员开发的代码采用restartClassloader来进行加载
1.4SpringBoot全局配置文件
SpringBoot启动会加载全局配置文件:
全局配置文件能够一些默认值进行修改及自定义配置
复制代码
Spring只支持的两种配置文件类型:.properties 和 .yaml
比较:
application.properties
application.properties是以key:value的形式
application.yaml:
json超级文本格式文件
yaml文件更类似于树状结构,看起来比application.properties文件更加清晰一点
SpringBoot启动过程中,会在那些目录下加载配置文件:
-file: ./config/
-file: ./
-classpath: /config/
-classpath: /
配置文件加载顺序:
下图序号
i下
1.5 application.properties配置文件讲解
1.6 application.yaml
复制代码
1.7 Value属性注入
1.8 ConfigurationProperties批量注入
1.9 ConfigurationProperties注入于@Value区别
2.0 SpringBoot日志框架
2.1 SLF4J日志工具的使用
2.2 统一框架的使用
2.3 SpringBoot日志使用
2.4 SpringBoot自定义日志输出