自定义starter起步依赖-案例讲解

自定义starter起步依赖

目标:引入起步依赖引入之后,要想使用阿里云OSS,注入AliyunOSSUtils直接使用即可。【可以给其他人使用】

1.以阿里云OSS文件上传为例,首先需要有俩个模块一个是做起步依赖的模块-springweb【aliyun1-oos-spring-starter】

还有一个是作为配置的模块-maven【aliyun1-oss-spring-boot-autoconfigure】;

2.在starter的pom文件中添加autoconfigure maven坐标

3.1在autoconfigure工程中添加代码,首先添加阿里云工具类,工具类有个方法upload是进行文件上传【略】,在SpringBoot项目中,并不会去扫描com.aliyun.oss这个包,或者说你创建的包,你的包结构和其它人无法一致。【*springboot启动器只会对当前包下及其子包进行扫描添加到容器中】所以说@Componen @Autowirte注解没用了,因为无法确定别人的包的结构!所以要进行set方法进行属性注入【主动注入】;

3.2 使用阿里云OSS文件 需要使用密钥私钥..一些配置 将appliaction.yml属性注入进来【不是我们重点】

3.3 属性注入的配置文件 AliProperties 和 工具类 无法被springboot扫描 【关键点!!】

我们需要创建一个自动配置类 添加相应的注解 @EnableConfiguationProperties(配置类的字节码文件) 自动注入配置文件 ,并交给SpringIOC管理

使用@Bean注解进行属性的注入 会在形参中隐藏了@Autowired注解 ok差不多完事

4.在resource下创建包META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports 添加全限定类名在别人使用的时候会扫描到并加载

5.测试

5.1.添加自定义起步依赖

5.2 配置appliaction.yml

5.3 注入对象调用方法

5.4 启动启动类 发送请求over

https://www.aliyun.com/product/oss?spm=5176.21213303.5694434980.1.403e53c9w4h9iQ&scm=20140722.S_card@@%E4%BA%A7%E5%93%81@@218843.S_cardgbdt.ID_card@@%E4%BA%A7%E5%93%81@@218843-RL_OSS-OR_ser-V_2-P0_0

#23届找工作求助阵地##软件开发薪资爆料##我的实习求职记录##你们的毕业论文什么进度了#
全部评论
https://blog.csdn.net/weixin_42140261/article/details/104864333
点赞
送花
回复
分享
发布于 2023-02-16 18:28 广东

相关推荐

1 2 评论
分享
牛客网
牛客企业服务