我們在開發中通常會遇到定義常量,但是如果寫在java代碼里不利於優化,於是這里我們將常量定義在配置文件里,步驟如下;
1.在配置文件application.yml定義常量
aliyun: oss: file: endpoint: oss-cn-shanghai.aliyuncs.com keyid: LTAIsOB7X12kCHTGX81 keysecret: ASy5lz2Mwr5KIVEUY3eDhFFi2jD1RkPC bucketname: eric.fang
2.創建一個類實現InitializingBean接口,重寫afterPropertiesSet()方法,加上@component注解,定義變量,使用@Value注解將值注入,然后定義常量方便訪問,最后讓常量賦值
@Component public class ConstantPropertiesUtil implements InitializingBean { @Value("${aliyun.oss.file.endpoint}") private String endpoint; @Value("${aliyun.oss.file.keyid}") private String keyid; @Value("${aliyun.oss.file.keysecret}") private String keysecret; @Value("${aliyun.oss.file.bucketname}") private String bucketname; //定義常量,為了能夠使用 public static String ENDPOINT; public static String KEYID; public static String KEYSECRET; public static String BUCKEYNAME; @Override public void afterPropertiesSet() throws Exception { ENDPOINT=endpoint; KEYID=keyid; KEYSECRET=keysecret; BUCKEYNAME=bucketname; } }
3.可以通過類直接進行調用
列如:
ConstantPropertiesUtil.ENDPOINT