Springboot配置文件占位符
Posted 我出一条鱼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Springboot配置文件占位符相关的知识,希望对你有一定的参考价值。
一、配置文件占位符
1、application.properties
server.port=8088 debug=false product.id=ID:${random.uuid} product.name=da mao mao product.weight=${random.int} product.fristLinePrice=${random.int(500,600)} product.endLinePrice=${random.int[300,400]} product.remark=${product.name}
2、SpringbootController
@RestController public class SpringBootController { @Value("${product.id}") private String id; @Value("${product.name}") private String name; @Value("${product.weight}") private Integer weight; @Value("${product.fristLinePrice}") private Integer fristLinePrice; @Value("${product.endLinePrice}") private Integer endLinePrice; @Value("${product.remark}") private String remark; @RequestMapping("/proper") public String getProper() { System.out.println("SpringBootController{" + "id=‘" + id + ‘‘‘ + ", name=‘" + name + ‘‘‘ + ", weight=" + weight + ", fristLinePrice=" + fristLinePrice + ", endLinePrice=" + endLinePrice + ", remark=‘" + remark + ‘‘‘ + ‘}‘); return "hello!!!"; } }
3、result
SpringBootController{
id=‘ID:188b528a-508f-44aa-9b5e-43c1af7b14e3‘,
name=‘da mao mao‘,
weight=237719179,
fristLinePrice=572,
endLinePrice=380,
remark=‘da mao mao‘
}
二、配置文件获取之前的值(如果该值有,直接获取,如果没有使用默认值):此处由于前面的配置中没有product.name,那么他就使用默认值 xiao mao mao
server.port=8088 debug=false product.id=ID:${random.uuid} product.weight=${random.int} product.fristLinePrice=${random.int(500,600)} product.endLinePrice=${random.int[300,400]} product.remark=${product.name:xiao mao mao}
SpringBootController{
id=‘ID:fcf731f3-c028-452a-a831-a25c1bf41d33‘,
name=‘null‘,
weight=-1450910103,
fristLinePrice=584,
endLinePrice=357,
remark=‘xiao mao mao‘
}
以上是关于Springboot配置文件占位符的主要内容,如果未能解决你的问题,请参考以下文章
如果 Spring Boot 的属性文件中未提供占位符值,如何跳过?