项目开发中,手动去读取Properties,太过于麻烦,而且使用不方便。
Spring Boot 自带Properties文件读取。
Properties文件java
masterDb.maxConnectionsPerHost=100 masterDb.connectTimeOut=60000 masterDb.threadsAllowedToBlockForConnectionMultiplier=50 masterDb.maxWaitTime=60000 masterDb.host=mongodbhost masterDb.port=27017 masterDb.user=appHost masterDb.pwd=abc123_ masterDb.authDb=admin
对应的java Beanspring
import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.PropertySource; import org.springframework.stereotype.Component; @Component // 前缀 @ConfigurationProperties(prefix = "masterDb") // 文件路径,可使用${}表达式获取spring environment属性 @PropertySource("classpath:masterDb.properties") public class MasterDbProperties { private int maxConnectionsPerHost; private int threadsAllowedToBlockForConnectionMultiplier; private int maxWaitTime; private int connectTimeout; // getters and setters.... }
主类mongodb
@SpringBootApplication // 不能使用 @EnableConfigurationProperties(MasterDbProperties.class) // 会致使bean被初始化两次 @EnableConfigurationProperties public class CoreApp { public static void main(String [] args) { SpringApplication.run(CoreApp.class, args); } }