在Spring Boot中如何使用@ConfigurationProperties绑定配置参数呢? ...

饭宝  金牌会员 | 2022-8-25 23:20:12 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 898|帖子 898|积分 2694

转自:
http://www.java265.com/JavaFramework/SpringBoot/202207/3965.html
下文笔者讲述springboot中使用@ConfigurationProperties绑定配置参数的方法分享,如下u宋史
  1. 我们都知道
  2. 属性绑定,我们通常使用@Value("${property}") 注解进行绑定,
  3. 但是当属性出现分层的现象,则编写比较繁琐
  4. 针对这个现象SpringBoot引入@ConfigurationProperties注解
复制代码
例:
  1. @Data
  2. @ConfigurationProperties("java.service")
  3. public class MyProperties {
  4.    
  5.     //get set代码省略
  6.     private boolean enabled = true;
  7.     private InetAddress remoteAddress;
  8.     private final Security security = new Security();
  9.     @Data
  10.     public static class Security {
  11.         private String username;
  12.         private String password;
  13.         // 如果这个属性配置的话,默认是“USER”
  14.         private List<String> roles = new ArrayList<>(Collections.singleton("USER"));
  15.     }
  16. }
  17. 在配置文件中进行如下配置:
  18. java:
  19.   service:
  20.     enabled: true
  21.     remoteAddress: 127.0.0.1
  22.     security:
  23.      username: java265user
  24.      password: password
  25.      roles:
  26.        - role1
  27.        - role2
复制代码
@ConfigurationProperties重要属性说明
  1. @ConfigurationProperties( value = "java.service",
  2.                           ignoreInvalidFields = false,
  3.                           ignoreUnknownFields = false)
  4. ignoreInvalidFields:
  5.    是否忽略非法值,如将一个字符串 "test"赋值给 bool 值,不忽略的话会报启动异常。
  6. ignoreUnknownFields:
  7.    对于多余的配置是否会报异常
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

饭宝

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表