springboot配置读取.md
李羽秋
2022年01月26日 · 阅读 948
springboot配置读取
在日常开发中,我们若想读取application.properties的值,我们该如何做呢?
1.方式一
我们通过Environment的方式进行读取配置文件的值
@RestController
public class TestController {
@Autowired
private Environment env;
@GetMapping("/getInfo")
public String getInfo(){
String property = env.getProperty("server.port");
return property;
}
}
2.方式二
通过@Value注解的方式读取
@Value("${server.port}")
private String port;
@GetMapping("/test2")
public String getInfo2(){
return port;
}
3.方式三
当我们在工作中做某些需求时,不得不自定义配置文件,我们可以使用spring提供的PropertiesFactoryBean去读取
首先我们在classpath下创建config.properties,内容如下
config.ip=192.168.1.1
config.port=8080
@ConfigurationProperties(locations = "classpath:config.properties", prefix = "config")
@Component
public class Config {
@NotEmpty
private String ip;
private int port;
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public int getPort() {
return port;
}
public void setPort(int port) {
this.port = port;
}
}
- @ConfigurationProperties中的locations用来指定你配置文件所在的路径
- @ConfigurationProperties中的prefix用来指定你配置名称的前缀,如config.ip, config就是你上面定义的前缀
- 这边在ip字段上还加了个@NotEmpty注解来防止忘记配置值了,如果你没配置ip的值,那么在启动的程序的时候框架将提示你
分类:
无
标签:
无