Spring中的参数统一配置

情景:

在一个Spring项目中通常存在如数据库 url,账号,密码等需要人为配置的参数,此类参数并非固定,很可能会发生变化,所以一般会统一集中在一个文件中,方便统一管理

解决方法

1.在项目resources目录下,创建application.yml文件

复制代码
minio:
  endpoint: http://<hostname>:<port>
  access-key: <access-key>
  secret-key: <secret-key>
  bucket-name: <bucket-name>

2.创建参数类

复制代码
设置前缀,yml文件的参数会自动映射到类中的参数上(自动开启驼峰命名)
@ConfigurationProperties(prefix = "minio")
@Data
public class MinioProperties {
    private String endpoint;
    private String accessKey;
    private String secretKey;
    private String bucketName;
}

3.创建配置类

复制代码
@Configuration
//@EnableConfigurationProperties({MinioProperties.class})
//在指定包下,自动查找,引用之前设置的参数类
@ConfigurationPropertiesScan("com.atguigu.lease.common.minio")
public class MinioConfiguration {
    @Autowired
    private MinioProperties minioProperties;


    @Bean
    public MinioClient minioClient() {
        return new MinioClient.Builder().endpoint(minioProperties.getEndpoint())
                .credentials(minioProperties.getAccessKey(), minioProperties.getSecretKey())
                .build();
    }
}
相关推荐
离开以后1 分钟前
java封装BigDecimal进行高精度计算
后端
SimonSkywalke2 分钟前
鸟哥的Linux私房菜快速阅读笔记(一) 指令使用、常见指令、寻求帮助
后端·面试
刘晓飞8 分钟前
import type 和 import 区别
后端
吴声子夜歌10 分钟前
小程序——界面API(一)
java·javascript·小程序
予枫的编程笔记13 分钟前
【面试专栏|Java并发编程】从Runnable到Callable,Java4种线程创建方式
java·多线程·thread·java面试·runnable·callable·java线程
gaize121315 分钟前
个人博客 / 官网云服务器|简单好用不贵
运维·服务器
一直都在57215 分钟前
Docker 从入门到实战系列(四):镜像 / 容器导入导出、容器互联与 SpringBoot 微服务打包
spring boot·docker·微服务
野犬寒鸦16 分钟前
SAP后端实习开发面试:操作系统与网络核心考点及Linux与Redis
java·服务器·网络·后端·面试
ServBay18 分钟前
代码减半,10分钟彻底告别 Java 开发旧习
java·后端
Soofjan20 分钟前
Go Map SwissTable Rehash 扩容与再哈希(源码笔记 6)
后端