Java自定义start

因为在实际的项目开发当中,我们可能会用到很多第三方的技术,但是并不是所有的第三方的技术官方都给我们提供了与SpringBoot整合的starter起步依赖,但是这些技术又非常的通用,在很多项目组当中都在使用。这时我们就可以自定义一个spring-boot-starter .Spring官方建议非官方Starter命名应遵循{name}-spring-boot-starter的格式,这里就自定义一个qiniu-oss-spring-boot-starter

需求:自定义qiniu-oss-spring-boot-starter,完成七牛云OSS操作工具类七牛云OSSUtils的自动配置。

目标:引入起步依赖引入之后,要想使用七牛云OSS,注入七牛云OSSUtils直接使用即可。

步骤:

第1步:创建自定义starter模块(进行依赖管理)

把七牛云OSS所有的依赖统一管理起来

第2步:创建autoconfigure模块

在starter中引入autoconfigure (使用时只需要引入starter起步依赖即可)

第3步:在autoconfigure中完成自动配置

定义一个自动配置类,在自动配置类中将所要配置的bean都提前配置好

定义配置文件,把自动配置类的全类名定义在配置文件中

自定义starter具体步骤

首先创建两个Maven工程:

1).qiniuyun-oss-spring-boot-starter模块

创建完starter模块后,删除多余的文件,最终保留内容如下:

删除pom.xml文件多余的内容:  

2). qiniuyun-oss-spring-boot-autoconfigure模块
创建完autoconfigure模块后,删除多余的文件,最终保留内容如下  

删除pom.xml文件中多余的内容:

在starter的pom中来引入autoconfigure的坐标  

3).前两步已经完成了,接下来是最关键的就是第三步:在autoconfigure模块当中来完成自动配置操作。

将项目中所使用的qiniuyunOSS工具类相关代码直接拷贝到autoconfigure模块下,然后进行改造。

拷贝过来后,还缺失一些相关的依赖,需要把相关依赖也拷贝过来:

下面我们就要定义一个自动配置类了,在自动配置类当中来声明qiniuyunOSSUtils的bean对象。

qiniuyunOSSProperties类:

在qiniuyun-oss-spring-boot-autoconfigure模块中的resources下,新建自动配置文件:

  • META-INF/spring.factories

spring.factories文件是Spring Boot自动配置的核心文件之一,在Spring Boot启动时,它会扫描classpath下所有的spring.factories文件,不仅仅加载spring的,第三方和自定义的也会加载 。

 spring.factories文件是一组组key=value的形式,配置的key为org.springframework.boot.autoconfigure.EnableAutoConfiguration,value是是自己定义的配置类全类名.最后将使用install命令分别将starter和autoconfigure放到仓库

到此starter已经配置好了,使用时只需要在项目中导入starter的坐标即可 .

  • 19
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值