创建一个spring-boot-starter非常简单
1.创建一个空的项目并构建
2.创建自己的BeanConfiguration类 并设置好触发条件(@Conditional(spring 4.0.x 提供的 最低要就java版本1.6))
spring-boot中提供的条件注解有:
@ConditionalOnBean :匹配给定的class类型或者Bean的名字是否在SpringBeanFactory中存在
@ConditionalOnMissingBean
@ConditionalOnClass:匹配给定的class类型是否在类路径(classpath)中存在
@ConditionalOnMissingClass
@ConditionalOnExpression : 匹配给定springEL表达式的值返回true时
@ConditionalOnJava :匹配JDK的版本,其中range属性是枚举类型有两个值可以选择
EQUAL_OR_NEWER 不小于
OLDER_THAN 小于
value属性用于设置jdk版本
@ConditionalOnMissingBean:spring上下文中不存在指定bean时
@ConditionalOnWebApplication:在web环境下创建
这些并不是全部但是应该足够我们使用了。其他他们都是对spring中的@Conditional注解的扩展,如果需要定制化的条件注解 完全可以自己实现一个条件注解。
3.创建META-INF/spring.factories配置文件 并配置org.springframework.boot.autoconfigure.EnableAutoConfiguration={你自定义要装配的配置类}
4.项目打成jar包 在别的spring-boot项目中引入
没有配置 配置文件的时候读取EnableBeanConfigClass这个bean应该是读取不到的
配置好配置文件后发现类自动注入进来了
网友评论