欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

SpringBoot学习(1)

程序员文章站 2022-03-12 18:23:36
springboot的自动配置功能,主要流程如下: 1 启动的时候加载我们的主配置类,也就是我们的入口类;从而开启我们的自动配置配置功能,这个是通过@EnableAutoConfiguration注解实现的; 2 @EnableautoConfiguration利用其注解类中的方法:EnableAu ......

springboot的自动配置功能,主要流程如下:

1 启动的时候加载我们的主配置类,也就是我们的入口类;从而开启我们的自动配置配置功能,这个是通过@enableautoconfiguration注解实现的;

2 @enableautoconfiguration利用其注解类中的方法:enableautoconfigurationimportselector,来给容器中导入一些组件;而需要导入那些组件是通过其调用的selectimport()方法实现的,这个方法最终会调用srpingfactoriesloader.loadfactorynames(),来扫描每个jar包下面的meta-inf/spring.factories文件,将这个文件中配置的enableautoconfiguration对应的所有值添加到容器中;

    注:这里添加的所有值都是一个配置类,而且其名字命名规则:xxxautoconfiguration;

3 加入的所有 xxxautoconfiguration组件,都是配置类,最终其会添加我们需要使用到的组件到容器中;

   而每一个xxxautoconfiguration配置类有一个关键的注解:@enableconfigurationproperties(xxxproperties.class);在这个注解中将application.properties或者application.yml中的对应配置与我们的java bean关联起来;然后我们在xxxautoconfiguratio类中添加组件的时候会用到xxxproperties类中的属性;

  所有的配置类都使用的这个套路;

 

springboot自动配置的总体思路就是,在添加组件的时候将组件中各个属性值的配置,放在对应的java bean中,配置类在添加某个组件的时候从对应的java bean中读取属性的初始化之,而初始化的值我们配置在对应的配置文件中;