为什么要配置不同环境区分开发、生产环境
- 数据库连接不一样
- 调试服务比如swagger等在生产环境应该关闭
配置步骤
创建三个yml文件
application.yml的dev、prod,并指定使用哪个环境
application.yml
spring:
profiles:
active: prod
application-dev.yml
level1:
level2:
appid: 1
application-prod.yml
level1:
level2:
appid: 2
Controller类测试结果
使用@value可以读取yml的属性
另外如果要让属性与实体类对应,而不是每个属性单独对应可以使用@ConfigurationProperties
package com.greentran.origin.controller;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.beans.factory.annotation.Value;
@Validated
@RestController
@RequestMapping("/user")
public class userController {
@Value("${level1.level2.appid}")
private String appid;
@GetMapping(value = "yml")
public String yml() {
return appid;
}
}