- 1. 作用
- 2. 注解
- 2.1 元注解
- 2.2 @Import
- 2.3 @Configuration
- 2.4 @ConditionalXXX
- 2.5 EnableConfigurationProperties
- 3. 配置文件
- 4. 结构
- 4.1 启动器
- 4.2 自动配置
- 5. 开发示例
- 5.1 创建工程
- 5.2 创建模块
- 5.3 开发自动配置模块
- 5.3.1 HelloProperties
- 5.3.2 HelloService
- 5.3.3 HelloServiceAutoConfigration
- 5.3.4 spring.factories
- 5.3.5 安装到本地仓库
- 6. 使用自动装配模块
1. 作用
为了简化配置,使spring的使用更加方便,例如:可以回忆一下springboot中是如何继承redis的。
spring配置方式的进化过程:
- xml的方式配置
- java config的方式配置,使用@configuration注解在java中配置
- 自动装配
springboot starter作用:
- 引入模块所需的相关jar包
- 自动配置各自模块所需的属性
使用springboot后集成常用的第三方框架变得非常简单了。
springboot starter带来的问题
starter使SpringBoot集成第三方框架变得简单,但对刚刚上手SpringBoot的人来说,可能只知道配置属性是在application.xml或application.yml中添加,但他们各自的属性都有哪些,具体怎么配置,却无从下手
2. 注解
自动装配相关的注解示例:
2.1 元注解
为更好的理解装配过程,复习一下元注解。
- @Target: 自定义注解的使用范围,比如类,方法,属性等
- @Retention: 保留策略,如源码中保存(@Override),class中保存(@SupperWarning),运行时保存等
- @Docmented: 为javadoc使用的。
- @Inherited: 被其修饰的自定义注解可以被子类继承
2.2 @Import
作用:为容器导入bean的定义
常用的三种方式:
1) @Import(value={A.class}) 将A类导入容器中,