在 Spring 4 后才引入了 @Conditional 等条件注解,它是 Spring Boot 中实现自动配置的最大功臣!那么问题来了:如果我们还在使用 Spring 3.x 的老版本,这时候要怎么实现一个自动配置呢?可以在这个时候对我们的 Bean 定义做判断,看看当前 存在/缺少 哪些 Bean 的定义,还可以增加一些 Bean 的定义 ―― 加入一些自己定制的 Bean。既然上面提到了 Spring 的两个扩展点,这里就延展一下关于 Bean 的一些定制的方式。InitializingBean / @PostConstruct / init-method这部分是关于初始化的,可以在 Bean 的初始化之后做一些定制,这里有三种方式:。在当前的例子中,我们假定一下当前环境为:没有使用 Spring Boot 以及高版本的 Spring。在其他项目中添加依赖:启动项目并观察日志,验证自动配置是否生效了:到这里,已成功在低版本的 Spring 中实现了类似自动配置的功能。

详解如何在低版本的Spring中快速实现类似自动配置的功能

详解如何在低版本的Spring中快速实现类似自动配置的功能

详解如何在低版本的Spring中快速实现类似自动配置的功能

详解如何在低版本的Spring中快速实现类似自动配置的功能

详解如何在低版本的Spring中快速实现类似自动配置的功能

详解如何在低版本的Spring中快速实现类似自动配置的功能