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
虚拟机参数:
测试: