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
虛擬機參數:
測試: