每个系统都要配置,废话就少说了, 直接了來吧

这两个文件就是为了环境切换准备的,我们一般都在application.properties文件切换环境,
spring.profiles.active=dev
要注意配置文件是会被替换的,需要注意前后顺序


这样我们在代码中获取local.user.name 的到的值肯定是最后出现的那一个, 还要注意一个就是有些东西只能出现一次, 比如server.prot这类服务器配置,只能在一个配置文件里面出现,否则就会出错, 至于为什么会出错干过软件的都明白, 对了还要说下application-dev.properties文件命名,一般来说就是横岗后面追加自己想要的什么dev, prod,test等,springboot的配置都在这里
https://docs.spring.io/spring-boot/docs/current/reference/html/appendix-application-properties.html
读取配置文件
spring提供了三种读取配置文件的方式
@Value
@RestController
@RequestMapping("/configDemo")
public class ConfigDemoController {
@Autowired
private EnvironmentConfig environmentConfig;
@Value("${local.user.name}")
private String userName;
@Autowired
private ConfigurationPropertiesConfig ConfigurationPropertiesConfig;
/**
* Value 获取配置值
*
* @return
*/
@GetMapping("/username")
public String getUserName_Value() {
return userName;
}
/**
* Environment 获取配置值
*
* @return
*/
@GetMapping("/username_env")
public String getUserName_Environment() {
return environmentConfig.getUserName();
}
/**
* configurationProperties 获取配置值
*
* @return
*/
@GetMapping("/server_configurationProperties")
public String getServer_ConfigurationProperties() {
String address = ConfigurationPropertiesConfig.getAddress();
return address;
}
}
ConfigurationProperties
@Configuration
@ConfigurationProperties("server")
public class ConfigurationPropertiesConfig {
private int port;
private String address;
public int getPort() {
return port;
}
public void setPort(int port) {
this.port = port;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
Environment
@Configuration
public class EnvironmentConfig {
@Autowired
private Environment environment;
public String getUserName() {
return environment.getProperty("local.user.name");
}
}
网友评论