美文网首页
spring boot 加载配置文件

spring boot 加载配置文件

作者: 好大一只鹏 | 来源:发表于2020-02-06 18:35 被阅读0次

Spring boot加载配置文件@Value

配置文件application.property
property =value
代码中:
public void test(){
       @Value("${property}")
       private boolean property;
}
如果是yml文件的话(注意后面带一个空格)
bean: 
  name: springboot
  age: 20
代码:
public void test(){
       @Value("${bean.name}")
       private String name;
       @Value("${bean.age}")
       private Integer ;
}

使用@ConfigurationProperties注解赋值属性

@ConfigurationProperties(prefix = "bean")
@Component
public class test() {

    private String name;
    private Integer age;

   // getter setter省略
}

使用自定义配置文件

如果不想在application.yml文件中配置属性,也可以在自定义的文件中配置

1.新建不是application.property或者yml的文件名为 test.yml
bean: 
       name : 小张

@Configuration
@PropertySource("classpath:test.yml")
@ConfigurationProperties(prefix = "bean")
public class PropertiesBean2 {
    private String name;
    private Integer age;

    // getter setter 省略
}
这里使用@PropertySource获取配置文件的位置属性的获取使用上述

加载其他配置文件

这里是application.yml
spring:
  profiles :
       active : db
新建application-db.yml
bean: 
   name:小张
注:配置文件名称需要时application-xx.yml格式
通过spring profiles active 来确定启用那个配置文件

外部命令行参数直接传入环境变量优先级高于配置文件

image.png

YAML语法:

1、基本语法
k:(空格)v:表示一对键值对(空格必须有);

以空格的缩进来控制层级关系;只要是左对齐的一列数据,都是同一个层级的
2、值的写法
字面量:普通的值(数字,字符串,布尔)
​ k: v:字面直接来写;

​ 字符串默认不用加上单引号或者双引号;

​ "":双引号;不会转义字符串里面的特殊字符;特殊字符会作为本身想表示的意思

​ name: "zhangsan \n lisi":输出;zhangsan 换行 lisi

​ '':单引号;会转义特殊字符,特殊字符最终只是一个普通的字符串数据

​ name: ‘zhangsan \n lisi’:输出;zhangsan \n lisi

对象、Map(属性和值)(键值对):
​ k: v:在下一行来写对象的属性和值的关系;注意缩进

​ 对象还是k: v的方式
行写法:

friends: {name: 小张,age: 18}

相关文章

网友评论

      本文标题:spring boot 加载配置文件

      本文链接:https://www.haomeiwen.com/subject/dfuuxhtx.html