配置优先级
SpringBoot中支持三种格式的配置文件
若三个类型的配置文件同时出现他们的优先级从上往下依次是

SpringBoot除了支持配置文件属性配置,还支持Java系统属性和命令行参数的方式进行属性配置。
-D配置项的名字=配置项的值 -D表示这是java系统属性

在IDEA中可以这样使用
总的来说配置优先级命令行属性>Java系统属性>配置文件
在运行Jar包的时候可以这样配置命令行属性和java系统属性
Bean管理
bean作用域
Spring支持五种作用域,后三种在web环境才生效

要声明Bean的作用域就需要添加@Scope注释
单例和多例Bean的使用场景
无状态的意思是此类中不需要保存数据,有状态则反之

第三方Bean
如果要管理的bean对象来自于第三方〈不是自定义的),是无法用@Component及衍生注解声明bean的,就需要用到@Bean注解。启动类

也就是说在装配的时候省略了Autowrited注解不推荐在启动类中声明Bean,推荐定义一个配置类在配置类中定义Bean
SpringBoot原理
起步依赖
是通过依赖传递,引入一个starter依赖自动引入其它的

自动配置
SpringBoot的自动配置就是当spring项目启动后,一些配置类、bean对象就自动存入到了IOC容器中,不需要我们手动去声明,从而简化了开发,省去了繁琐的配置操作。
第一种方法
如果想要实现自动注入第三方的包(里面的类要有@Component注解)就需要添加扫描范围,将需要注入的包添加进去

第二种方法
使用import注解

导入实现了ImportSelector接口的实现类


直接使用@enable注解,一般来说第三方会帮你封装好要导入的类
