主页 > 创业  > 

SpringBoot----自定义Start(自定义依赖)

SpringBoot----自定义Start(自定义依赖)
一,为什么要定义Start

向阿里云OSS如果我们要引入的话很麻烦,所以我们可以自定义一些组件,

然后我们只需要在pom文件中引入对应的坐标就可以

二,怎么定义(以阿里云OSS为例)         1, 定义两个组件模块   org.mybatisspring.boot:mybatis-spring-boot-starter这个模块中什么代码都不需要有------只需要在pom文件中定义 自定义aliyun-oos-spring-boot-starter 其他的都删除只保留精简pom文件 org.mybatis.spring.boot:mybatis-spring-boot-autoconfigure在这个包中进行自动配置功能 自定义aliyun.oss-spring-boot-autoconfigure 其他的都删除-----启动类和application配置文件也删除---测试类也删除然后再starter中的配置文件中引入autoconfigure依赖----非常重要在autoconfigure的pom文件中引入aliyunoss的依赖将工具类放到com.aliyun.oss包下面 定义一个自动配置类AliOSSConfiguration package com.aliyun.oss; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration @EnableConfigurationProperties(AliOSSProperties.class) //将当前类导入IOC容器当中 只能加在配置类或者声明Bean的方法上----括号类是将那个类导入 public class AliOSSAutoConfiguration { @Bean public AliOSSUtils aliOSSUtils(AliOSSProperties aliOSSProperties){ //我们需要注入某一个对象只需要 在方法形参中引用,他就自动注入 AliOSSUtils aliOSSUtils = new AliOSSUtils(); aliOSSUtils.setAliOSSProperties(aliOSSProperties); return aliOSSUtils; } }

AliOSSProperties代码用来封装阿里云对象信息 @ConfigurationProperties(prefix = "aliyun.oss") public class AliOSSProperties { private String endpoint; private String accessKeyId; private String accessKeySecret; private String bucketName; public String getEndpoint() { return endpoint; } public void setEndpoint(String endpoint) { this.endpoint = endpoint; } public String getAccessKeyId() { return accessKeyId; } public void setAccessKeyId(String accessKeyId) { this.accessKeyId = accessKeyId; } public String getAccessKeySecret() { return accessKeySecret; } public void setAccessKeySecret(String accessKeySecret) { this.accessKeySecret = accessKeySecret; } public String getBucketName() { return bucketName; } public void setBucketName(String bucketName) { this.bucketName = bucketName; }

自定义自动配置文件(要想Spring启动时自动加载该文件必须配置)--两级目录下创建一个文件文件名为

org.springframework.boot.autoconfigure.AutoConfiguration.imports

然后将自动配置文件的全类名复制进去

标签:

SpringBoot----自定义Start(自定义依赖)由讯客互联创业栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“SpringBoot----自定义Start(自定义依赖)