1、占位符
student.sname=zhai_${random.uuid}
student.age=12_${random.int}
student.maps.k1=1
student.maps.k2=2
student.list=a,b,c
student.course.courseno=202007_${student.sname}
student.course.coursename=java
配置文件中可以使用随机数:如:random.value、random.int、random.long、random.int(10)
属性配置占位符,可以在配置文件中引用前面配置过的属性,${app.name:默认值}来指定找不到属性时的默认值
2、profile
是spring对不同环境提供不同配置功能的支持,可以通过激活指定的参数等方式快速切换环境
(1)多profile文件形式:application-{ }.properties
书写多个properties配置文件,分别配置不同的端口号。
书写controller:
@Controller
public class HelloController {
@ResponseBody
@RequestMapping("/hello")
public String hello(){
return "hello world";
}
}
(2)在默认情况下使用的是application.properties
(3)在主配置文件中指定要激活的配置文件
spring.profiles.active=dev
(4)再次运行默认端口号已经改变
3、yaml的多文档块
(1)配置文件方式激活
与properties配置文件的配置方式不同yaml方式是把配置写在一个配置文件内,用—分隔,使用的时候激活相应的文档块即可:
server:
port: 8888
spring:
profiles:
active: dev
---
server:
port: 8889
spring:
profiles: dev
---
server:
port: 8890
spring:
profiles: prod
测试
(2)命令行方式激活
server:
port: 8888
---
server:
port: 8889
spring:
profiles: dev
---
server:
port: 8890
spring:
profiles: prod
配置命令行:
测试:
(3)指定虚拟机参数激活
配置文件:
server:
port: 8888
---
server:
port: 8889
spring:
profiles: dev
---
server:
port: 8890
spring:
profiles: prod
虚拟机参数:
测试: