189 8069 5689

SpringBoot从yml配置文件中读常用参数值实例方法

SpringBoot现在基本上都是使用application-XXX.yml(生产环境为pro,开发测试环境为dev)来配置项目中的一些配置条件,在springboot中还可以通过从yml文件中将yml中的数据直接读取出来。

站在用户的角度思考问题,与客户深入沟通,找到蔚县网站设计与蔚县网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站设计制作、网站制作、企业官网、英文网站、手机端网站、网站推广、域名申请、网络空间、企业邮箱。业务覆盖蔚县地区。

1.yml文件(这里设置参数的时候往往设置两层前缀,避免在调用的时候该属性中的部分参数名与计算机中的某些名字冲突)

test:
 person:
  lastName: hello
  age: 18
  boss: false
  birth: 2017/12/12
  maps: {k1: v1,k2: 12}
  lists:
   - lisi
   - zhaoliu
  dog:
   name: 小狗
   age: 12

2.在JavaBean中读取参数值,并且将读取出来的值赋予到指定的属性上

/**
 * 将配置文件中配置的每一个属性的值,映射到这个组件中
 * @ConfigurationProperties:告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;
 *   prefix = "testdemo.person":配置文件中哪个下面的所有属性进行一一映射(yml文件中的参数名要和JavaBean中的属性名保持一致)
 *
 * 只有这个组件是容器中的组件,才能容器提供的@ConfigurationProperties功能;
 *
 */
@Component
@ConfigurationProperties(prefix = "testdemo.person")
public class Person {

  private String lastName;
  private Integer age;
  private Boolean boss;
  private Date birth;

  private Map maps;
  private List lists;
  private Dog dog;
}

 3.pom.xml文件中导入依赖配置(注:这里可能需要启动一下项目,使之生效)


    
      org.springframework.boot
      spring-boot-configuration-processor
      true
    

4.@value 注解获取yml配置文件中的数据,以及@Validated进行数据校验

@Component
@Validated
public class Person {

  /**
   * 
   *      * 
   */

  //lastName必须是邮箱格式
  @Email
  @Value("${person.last-name}")
  private String lastName;
  @Value("#{11*2}")
  private Integer age;
  @Value("true")
  private Boolean boss;

  private Date birth;
  private Map maps;
  private List lists;
  private Dog dog;

5.@ConfigurationProperties(prefix = "person") 和 @value的区别

|          | @ConfigurationProperties       | @Value |
| ----------          |------------------------          | ------ |
| 功能         | 批量注入配置文件中的属性    | 一个个指定 |
| 松散绑定(松散语法)   | 支持           | 不支持 |
| SpEL          | 不支持          | 支持 |
| JSR303数据校验     | 支持           | 不支持 |
| 复杂类型封装       | 支持           | 不支持 |

6.总结

配置文件yml还是properties他们都能获取到值;

如果说,我们只是在某个业务逻辑中需要获取一下配置文件中的某项值,使用@Value;

如果说,我们专门编写了一个javaBean来和配置文件进行映射,我们就直接使用@ConfigurationProperties;

以上就是本次介绍的全部相关知识点,感谢大家的学习和对创新互联的支持。


当前题目:SpringBoot从yml配置文件中读常用参数值实例方法
网页路径:http://cdxtjz.cn/article/pighcg.html

联系我们

您好HELLO!
感谢您来到成都网站建设公司,若您有合作意向,请您为我们留言或使用以下方式联系我们, 我们将尽快给你回复,并为您提供真诚的设计服务,谢谢。
  • 电话:028- 86922220 18980695689
  • 商务合作邮箱:631063699@qq.com
  • 合作QQ: 532337155
  • 成都网站设计地址:成都市青羊区锣锅巷31号五金站写字楼6楼

小谭建站工作室

成都小谭网站建设公司拥有多年以上互联网从业经验的团队,始终保持务实的风格,以"帮助客户成功"为已任,专注于提供对客户有价值的服务。 我们已为众企业及上市公司提供专业的网站建设服务。我们不只是一家网站建设的网络公司;我们对营销、技术、管理都有自己独特见解,小谭建站采取“创意+综合+营销”一体化的方式为您提供更专业的服务!

小谭观点

相对传统的成都网站建设公司而言,小谭是互联网中的网站品牌策划,我们精于企业品牌与互联网相结合的整体战略服务。
我们始终认为,网站必须注入企业基因,真正使网站成为企业vi的一部分,让整个网站品牌策划体系变的深入而持久。