在SpringBoot中,我们可以自定义数据源以后就可以通过更改配置文件来替代复杂的代码文件。
- 首先我们需要引入maven文件
org.springframework.boot spring-boot-configuration-processor true
- 我们在代码中创建一个配置类
@ConfigurationProperties(prefix = "project.thread") // 外部化配置的注释。prefix 是统一前缀都为project.thread
@Component
@Data // 这里我使用的是lombok注解
public class ThreadPoolConfigProperties {
private Integer corePoolSize;
private Integer maxPoolSize;
private Long keepAliveSeconds;
}
- 之后,我们就可以在我们的配置文件中配置相关属性
project:
thread:
corePoolSize: 5
maxPoolSize: 20
keepAliveSeconds: 60
- 如何使用?
@Bean
public ThreadPoolExecutor threadPoolExecutor(ThreadPoolConfigProperties properties) {
return new ThreadPoolExecutor(properties.getCorePoolSize(), properties.getMaxPoolSize(),
properties.getKeepAliveSeconds(), TimeUnit.SECONDS, new LinkedBlockingQueue<>(10000),
Executors.defaultThreadFactory(), new ThreadPoolExecutor.AbortPolicy());
}
最后,有的同学可能要问,我就使用一个属性,需要这么麻烦吗?我直接填入参数不也行吗?是的,我们确实可以这样做,但是如果我们项目非常庞大呢?有多个地方使用这些自定义配置数据作为参数呢?难道要一个个文件去修改吗?



