创建自己的spring-boot-starter

创建一个spring-boot-starter非常简单

1.创建一个空的项目并构建


创建自己的spring-boot-starter_第1张图片

2.创建自己的BeanConfiguration类 并设置好触发条件(@Conditional(spring 4.0.x 提供的 最低要就java版本1.6))


创建自己的spring-boot-starter_第2张图片

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={你自定义要装配的配置类}


创建自己的spring-boot-starter_第3张图片

4.项目打成jar包 在别的spring-boot项目中引入

没有配置 配置文件的时候读取EnableBeanConfigClass这个bean应该是读取不到的


创建自己的spring-boot-starter_第4张图片

配置好配置文件后发现类自动注入进来了


创建自己的spring-boot-starter_第5张图片

你可能感兴趣的:(创建自己的spring-boot-starter)