spring boot 获取properties 属性值 多种方式
spring boot 在多环境情况下我们需要根据不同的获取不一样的值, 我们会配置在不同的文件中,
那么我们怎么获取配置的属性值呢! 下面介绍几种用法。
- 除了默认配置在 application.properties 的多环境中添加属性:
我们会在application.properties 中激活不同方式选择下面的不同文件进行发布。
## 设置的激活参数:dev, test, prod
- spring.profiles.active=prod
application-dev.properties
application-test.properties
application-prod.properties
如:
- url.lm=editMessage
- url.orgCode=100120171116031838
- url.ybd=http://www.test.com/sales/
- url.PostUrl=/LmCpa/apply/applyInfo
获取属性可以:
定义配置类:
- @ConfigurationProperties(prefix = “url”)
- public class ManyEnvProperties{
- private String lm;
- private String orgCode;
- private String ybd;
- private String postUrl;
- // 省列getter setter 方法
- // ….
- }
https://blog.csdn.net/u012869130/article/details/77934565?locationNum=1&fps=1 获取map
使用之前在spring 中加载的value值形式
@Component
- public class ManyEnvProperties {
- @Value(“${url.lm}“)
- private String lmPage;
- @Value(“${url.ybd}“)
- private String sendYbdUrl;
- @Value(“${url.orgCode}“)
- private String orgCode;
- @Value(“${url.PostUrl}“)
- private String PostUrl;
- // 省列getter setter 方法
- // ….
- }
- 也可以使用spring boot 里面的 Environment 直接取值
显示注入, 其次是在需要的地方获取值
- @Autowired
- private Environment env;
- logger.info(“===============》 “ + env.getProperty(“url.lm”));
如果是自己新建的一个properties 文件:
@Component
- @ConfigurationProperties(prefix = “url”)
- @PropertySource(“classpath:/platform.properties”)
- public class PropertiesEnv {
- private String lm;
- private String orgCode;
- private String ybd;
- private String postUrl;
- // 省列getter setter 方法
- // ….
- }
转自:https://blog.csdn.net/zhongzunfa/article/details/78644362
还没有评论,来说两句吧...