Spring Boot(六)之根据环境不同自定义变量
1.在不同环境下配置自定义的变量
在application-dev.yml中
# 自定义属性
connect:
env: dev
ip: 127.0.0.1
username: dev
password: 123456
在application-test.yml中
# 自定义属性
connect:
env: test
ip: 127.0.0.1
username: test
password: 123456
在application-prod.yml中
# 自定义属性
connect:
env: prod
ip: 127.0.0.1
username: prod
password: 123456
2.在pom.xml中添加依赖
<!-- 自定义配置需要的依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
3.创建Bean对象接收
@Component
@ConfigurationProperties(prefix = "connect")
public class ConnectBean {
private String env;
private String ip;
private String username;
private String password;
...// 省略 set get
}
@ConfigurationProperties(prefix = “connect”):指定的就是application-{env}.yml中的connect的配置
4.使用测试
在userServiceImpl中的searchAll中使用
@Autowired
private ConnectBean connectBean;
...
@Override
public List<User> searchAll() {
logger.info("searchAll");
logger.info(connectBean.toString());
return userDao.searchAll();
}
4.1 dev环境
4.2 test环境
4.3 prod环境