• Spring Boot 的文件配置


    SpringBoot的配置文件,有三种格式

    1.properties
    2.yaml
    3.yml(yaml的简写)

    这里主要介绍1和3格式的。

    在项目中,同时存在properties和yml配置文件, properties的优先级更高
    同时存在时,两个文件都生效
    如果两个文件中,都包含同一个配置,以properties为主。

    properties的配置


    key value的形式,以=分割
    key 的格式建议是小写,单词之间使用.分割

    我们可以在properties文件中设置配置,然后在其他类中进行读取

    1. demo.key = hello
    2. @RestController//为什么必需使用这个注解
    3. public class Controller {
    4. @Value("${demo.key}")//读配置文件
    5. private String key;
    6. @RequestMapping("/readKey")
    7. public String readKey(){
    8. return "读到的配置"+key;
    9. }
    10. }

    切记@value配置中的文件名必需于配置中的相同,如果去掉$,就会把""中的值赋值给当前变量

    就会变成这样

    yml配置

    想要将properties中的配置变成yml的遵守下面规则即可

    把.换成冒号+换行key后面用冒号赋值
    (Value前面)冒号后面一定要加空格

    1. demo.key: hello
    2. @RestController
    3. public class YmlController {
    4. @Value("${demo.key}")
    5. private String key;
    6. @RequestMapping("/readYml")
    7. public String readYml(){
    8. return "读取的配置Yml" + key;
    9. }
    10. }

    初始化直接读入配置文件的内容,在tomcat启动之前就进行执行

    1. @PostConstruct
    2. public void init(){
    3. System.out.println("key"+key);
    4. System.out.println("key2"+key2);
    5. }

    文件配置内容中的类型以自己实际为准,不会随便进行转化除了数字10这样类似的,因为无论是哪种类型其都可以,不像dsasda这串字符一样,其只能为字符串类型,不然会报错

    yml特殊内容配置

    null:使用~
    空字符串: key后面直接空着就行了
    推荐用单引号或者双引号括起来


    这里的转义与以前学的是相反的意思

    单引号会对特殊字符进行转义双引号不会进行转义
    \n本身表示的是换行
    使用单引号时,内容表示成了\n,而不是换行,所以认为是转义使用双引号时, \n表示成了换行,也就是\n的本来含义

    下述代码可以从配置文件读取全部数据,pre里面必需与配置文件中的前缀名相同

    1. @Component
    2. @ConfigurationProperties(prefix = "student")//pre中的意思就是写出yml文件的前缀是什么进行匹配
    3. @Data
    4. public class Student {
    5. private Integer id;
    6. private Integer age;
    7. private String name;
    8. }

    配置集合要加-如果不加空格,这部分内容会变成一个整体,统一赋值给对应属性
     

  • 相关阅读:
    Shell :抽奖小程序
    QT-地形3D
    Scanner、Random、stirng
    神经网络编译器TVM
    apt-mirror 制作麒麟桌面版内网源
    Linux学习第12天:基于API函数的字符设备驱动开发:一字一符总见情
    Spring Boot 实现跨域的 5 种方式,总有一种适合你,建议收藏
    PHP:CartesianProduc笛卡尔乘积算法(附完整源码)
    十 动手学深度学习v2 ——卷积神经网络之NiN + GoogLeNet
    Spring MVC拦截器
  • 原文地址:https://blog.csdn.net/zhimeng3/article/details/138167520