spring boot 获取properties 属性值 多种方式

ゝ一世哀愁。 2022-05-26 03:08 367阅读 0赞

spring boot 在多环境情况下我们需要根据不同的获取不一样的值, 我们会配置在不同的文件中,

那么我们怎么获取配置的属性值呢! 下面介绍几种用法。

  1. 除了默认配置在 application.properties 的多环境中添加属性:

我们会在application.properties 中激活不同方式选择下面的不同文件进行发布。

## 设置的激活参数:dev, test, prod

  1. spring.profiles.active=prod

application-dev.properties

application-test.properties

application-prod.properties

如:

  1. url.lm=editMessage
  2. url.orgCode=100120171116031838
  3. url.ybd=http://www.test.com/sales/
  4. url.PostUrl=/LmCpa/apply/applyInfo

获取属性可以:

定义配置类:

  1. @ConfigurationProperties(prefix = “url”)
  2. public class ManyEnvProperties{
  3. private String lm;
  4. private String orgCode;
  5. private String ybd;
  6. private String postUrl;
  7. // 省列getter setter 方法
  8. // ….
  9. }

https://blog.csdn.net/u012869130/article/details/77934565?locationNum=1&fps=1 获取map

  1. 使用之前在spring 中加载的value值形式

  2. @Component

  3. public class ManyEnvProperties {
  4. @Value(“${url.lm}“)
  5. private String lmPage;
  6. @Value(“${url.ybd}“)
  7. private String sendYbdUrl;
  8. @Value(“${url.orgCode}“)
  9. private String orgCode;
  10. @Value(“${url.PostUrl}“)
  11. private String PostUrl;
  12. // 省列getter setter 方法
  13. // ….
  14. }
  1. 也可以使用spring boot 里面的 Environment 直接取值

显示注入, 其次是在需要的地方获取值

  1. @Autowired
  2. private Environment env;
  3. logger.info(“===============》 “ + env.getProperty(“url.lm”));
  1. 如果是自己新建的一个properties 文件:

  2. @Component

  3. @ConfigurationProperties(prefix = “url”)
  4. @PropertySource(“classpath:/platform.properties”)
  5. public class PropertiesEnv {
  6. private String lm;
  7. private String orgCode;
  8. private String ybd;
  9. private String postUrl;
  10. // 省列getter setter 方法
  11. // ….
  12. }

转自:https://blog.csdn.net/zhongzunfa/article/details/78644362

发表评论

表情:
评论列表 (有 0 条评论,367人围观)

还没有评论,来说两句吧...

相关阅读