spring的sdk或者starter开发总体上有几个点需要注意

Java SDK版本兼容

当前很多java8/java11及以上的系统,太高的版本可能会造成不兼容,太低的jdk版本性能和一些库以及语言特性无法使用,这个需要综合考量

Spring配置类使用

大体上启动一个starter的步骤

step-1
构建入口
构建 spring factories文件, 指明启动的配置类(@Configuration注解类)

location src/main/resources/META-INF/spring.factories

step-2
配置启动
@ConditionalOnProperty 指定条件配置
@ConditionalOnMissingBean 指定Bean条件注入
@ConfigurationProperties(prefix= xxxxx) 指定配置项前缀
@Import 引入其他类型格式配置或者资源

step-3
spring容器扫包
使用注解@ComponentScan 指明包扫描范围,将spring框架注入的bean全部在容器启动时注入

其实上面两步就可以了,整体上还是比较简单的

注意事项

  1. sdk的maven依赖属性(provide),配置环境依赖的实际
  2. 组件冲突,由于一般spring使用单例,其他系统使用的时候有概率已经实例化过相同的组件了,这个时候要使用@ConditionalOnMissingBean注解
  3. @Qualifier注解的使用,还是因为2,虽然bean名字可以区分,但是如果其他系统未使用指定名称,也会有冲突,会发现有两个实例

Q.E.D.


每一个平凡的日常都是连续的奇迹