美文网首页spring boot教育程序员
SprinBoot基础教程3-配置文件详解:Properties

SprinBoot基础教程3-配置文件详解:Properties

作者: Jokey2017 | 来源:发表于2017-06-01 11:45 被阅读38次

    视频教程:http://www.roncoo.com/course/view/c99516ea604d4053908c1768d6deee3d

    源码地址:https://github.com/roncoo/spring-boot-demo

    一.配置文件的生效顺序,会对值进行覆盖:

    1. @TestPropertySource注解

    2.命令行参数

    3. Java系统属性(System.getProperties())

    4.操作系统环境变量

    5.只有在random.*里包含的属性会产生一个RandomValuePropertySource

    6.在打包的jar外的应用程序配置文件(application.properties,包含YAML和profile变量)

    7.在打包的jar内的应用程序配置文件(application.properties,包含YAML和profile变量)

    8.在@Configuration类上的@PropertySource注解

    9.默认属性(使用SpringApplication.setDefaultProperties指定)

    二.配置随机值

    roncoo.secret=${random.value}

    roncoo.number=${random.int}

    roncoo.bignumber=${random.long}

    roncoo.number.less.than.ten=${random.int(10)}

    roncoo.number.in.range=${random.int[1024,65536]}

    读取使用注解:@Value(value = "${roncoo.secret}")

    注:出现黄点提示,是要提示配置元数据,可以不配置

    三.属性占位符

    当application.properties里的值被使用时,它们会被存在的Environment过滤,所以你能够引用先前定义的值(比如,系统属性)。

    roncoo.name=www.roncoo.com

    roncoo.desc=${roncoo.name} is a domain name

    四.Application属性文件,按优先级排序,位置高的将覆盖位置低的

    1.当前目录下的一个/config子目录

    2.当前目录

    3.一个classpath下的/config包

    4. classpath根路径(root)

    这个列表是按优先级排序的(列表中位置高的将覆盖位置低的

    五.配置应用端口和其他配置的介绍

    #端口配置:

    server.port=8090

    #时间格式化

    spring.jackson.date-format=yyyy-MM-dd HH:mm:ss

    #时区设置

    spring.jackson.time-zone=Asia/Chongqing

    六.使用YAML代替Properties

    注意写法:冒号后要加个空格

    了解更多详情请加入Dubbo技术交流群:548209960


    相关文章

      网友评论

        本文标题:SprinBoot基础教程3-配置文件详解:Properties

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