您的位置:首页 > 编程语言 > Java开发

Spring Boot配置文件简单介绍

2017-11-20 18:58 579 查看
Spring Boot对配置文件支持非常友好,支持
*.properties
*.yml
,前者是常用的配置文件,后者是Spring Boot推荐的配置文件。

一、Spring Boot支持的配置文件

Spring Boot支持两种配置文件,一个是常见的.properties格式,另外一个就是专有的.yml或者*.yaml格式。一般两者的命名都是application。

二、配置随机值

这里是介绍如何配置随机值等数值,可根据实际情况配置。两种配置方式是等效的,实际选择其中一种即可,推荐使用
*.yml


1)application.properties

lemon.secret=${random.value}

# 获取一个随机整数
lemon.number=${random.int}

# 获取一个随机长整数
lemon.bignumber=${random.long}

# 获取一个随机0~10的随机整数
lemon.number.less.than.ten=${random.int(10)}

# 获取指定区间范围的随机整数
lemon.number.in.range=${random.int[1024,65536]}


2)application.yml

# 配置文件的设置
# 配置文件中是可以配置随机值的
lemon:
secret: ${random.value}
number: ${random.int}
bignumber: ${random.long}
number1:
less:
than: ${random.int(10)}
in:
range: ${random.int[1,10]}


注意:冒号后面都有一个空格。

加载Spring Boot应用时,会自动加载配置文件,在controller中获取配置文件中值的方式是通过@Value这个注解,@Value(value = “${lemon.secret}”)。

三、属性占位符

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

lemon.name=www.cug.edu.cn
lemon.desc=${lemon.name} is a domain name


yml配置文件中设置方法一致。

四、其他属性配置

# 端口配置
server.port=8090

# 时间格式化
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss

# 时区设置
spring.jackson.time-zone=Asia/Chongqing


这是配置一些常见的公共属性。yml格式的配置文件配置如下:

# 端口配置
server:
port: 8080

# 时区和时间格式化
spring:
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: Asia/Chongqing


五、多文件配置

1、多环境配置文件的好处:

1)不同环境配置可以配置不同的参数

2)便于部署,提高效率,减少出错

2、Properties多环境配置

1)配置激活选项 spring.profiles.active=dev,可以修改值来确定不同的环境配置

2)添加其他配置文件

application.properties

application-dev.properties

application-test.properties

application-pro.properties

更改激活选项,就可以加载激活不同的环境配置文件。公共的配置信息可以写在application.properties文件中。

3、YAML多环境配置

spring:
profiles:
active: pro
# 时区和时间格式化
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: Asia/Chongqing

---
spring:
profiles: dev
# 端口配置
server:
port: 8080

---
spring:
profiles: pro
# 端口配置
server:
port: 8081

---
spring:
profiles: test
# 端口配置
server:
port: 8082


更改激活选项的值就可以启动不同的环境配置。不同的配置使用三个横杠(
-
)区分即可。其实这是一种单文件多配置的一种体现方式。

4、两种配置方法的比较

Properties配置多环境,需要添加多个配置文件,YAML只需要一个配件文件

书写格式的差异,yaml相对比较简洁,优雅

YAML的缺点:不能通过@PropertySource注解加载。如果需要使用@PropertySource注解的方式加载值,那就要使用properties文件。

5、如何使用

在命令行启动:
java -jar myapp.jar --spring.profiles.active=dev
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息