一、自定义参数
除了可以在spring boot的配置文件中设置各个start模块中预定义的配置属性,也可以在配置文件中定义一些我们需要的自定义属性。比如在application.properties中添加
比如:
book.name=SpringCloud
book.author=psw
然后,在应用中可以通过@value注解加载这些自定义的参数:
@Component
public class Book{
@Value("${book.name}")
private String name;
@Value("${book.author}")
private String author;
}
参数引用
在application.properties中的各个参数之间可以直接通过使用PlaceHolder的方式进行引用,就像下面的设置
book.name=SpringCloud
book.author=psw
book.desc=${book.author} is writing 《${book.name}》
使用随机数
在一 些特殊情况下, 我们希望有些参数每次被加载的时候不是 一 个固定的值, 比如密
钥、 服务端口等。 在 SpringBoot的属性配置文件中, 可以 通过 使用
random配置来产生随机的int值、long值或者string字符串,这样我们就可以容易地通过配置随机生成属性,而不是在程序中通过编码来实现这些逻辑。
r
a
n
d
o
m
配
置
来
产
生
随
机
的
i
n
t
值
、
l
o
n
g
值
或
者
s
t
r
i
n
g
字
符
串
,
这
样
我
们
就
可
以
容
易
地
通
过
配
置
随
机
生
成
属
性
,
而
不
是
在
程
序
中
通
过
编
码
来
实
现
这
些
逻
辑
。
{random}的配置方式主要有以下几种, 读者可作为参考使用。
#随机字符串
com.didispace.blog.value=
random.value#随机intcom.didispace.blog.number=
r
a
n
d
o
m
.
v
a
l
u
e
#
随
机
i
n
t
c
o
m
.
d
i
d
i
s
p
a
c
e
.
b
l
o
g
.
n
u
m
b
e
r
=
{random.int}
#随机long
com.didispace.blog.bignumber=${random.long}
# 10以内的随机数
com.didispace.blog.test1=${random.int(l0)}
# 10-20的随机数
com.didispace.blog.test2=${random.int[l0,20]}
Spring Boot多环境配置
在 Spring Boot 中, 多环境配置的文件名需要满足 application-{profile}.
properties的格式, 其中{profile}对应你的环境标识, 如下所示。
• application-dev.properties: 开发环境。
• application-test.properties: 测试环境。
• application-prod.properties: 生产环境。
至于具体哪个配置文件会被加载, 需要在 application.properties 文件中通过
spring.profiles.active 属性来设置, 其 值 对应配置文件中的{profile}值。 如
spring.profiles.active = test就会加载 application.test.proper巨es配置
文件内容。