这两天看到了springBoot系统初始化器,搜了半天全都是讲系统初始化器的定义方法,看了半天,感觉看是大概看懂了,但是为什么要定义这个系统初始化器,它的作用是什么我还不太理解。
系统初始化器是Spring容器刷新之前执行的一个回调函数
好不容易在一个视频中看到,作用是向Spring Boot容器中注册属性,这让我发现我有很多东西,很多名词都是一知半解。
spring容器
容器将创建对象,把它们连接在一起,配置它们,并管理他们的整个生命周期从创建到销毁。
Spring容器相当于一个bean工厂(org.springframework.beans.factory.BeanFactory),用来统一管理bean。Spring在搭建框架的时候会有很多配置文件,在配置文件中以
<bean id=“…” class=“…”>
<!– 这里写bean的配置 –>
</bean>
这种方式去往容器中注册bean,那Spring Boot搭建的时候省去了这些配置文件,在我们为一些类加注解的时候相当于往容器中注册了这个bean,比如这些注解
@Controller
@Service
@Repository
@Configuration
向容器中注册以后,再调用的时候就可以通过自动注入的方式去调用这个实例,不用再New了。
那我理解的这个向SpringBoot中注册属性,就跟注册Bean的情况差不多,把后面可能会用到的属性提前管理起来,方便后面的使用。那系统初始化器就是有点像定义一个全局变量对吧。