有时我们需要将一些配置信息添加到我们的代码中,但是直接将配置信息写到代码中,那么就不利于扩展和集中管理,因此有几种方法可以使得配置信息易于管理
方法一:
使用枚举类常量封装配置信息
使用idea创建枚举类
实现代码
public enum Test {
NAME("name")
,AGE("18");
private String value;
Test(String value) {
this.value = value;
}
private String getValue(){
return this.value;
}
测试
public static void main(String[] args) {
System.out.println(Test.NAME.getValue() + "," + Test.AGE.getValue());
}
测试结果
方法二
创建普通的常量类
实现代码
public class Test{
public static final String NAME = "name";
}
测试
public static void main(String[] args) {
System.out.println(Test.NAME);
}
测试结果
方法三
创建一个.properties配置文件放置resources目录下(使用的是maven项目)
创建一个test.properties文件,添加如下内容
my.name = cw
my.age = 18
封装一个工具类
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Map;
import java.util.ResourceBundle;
public class ConfigConstant {
private static Map<String,String> valueMap = new HashMap<String,String>();
static {
// 加载resources下的test.properties配置文件,如果有多个配置文件,可以依次加载获取
ResourceBundle reb = ResourceBundle.getBundle("test");
Enumeration<String> keys = reb.getKeys();
// 获取配置文件中的所有键值
while ( keys.hasMoreElements() ){
String key = keys.nextElement();
String value = reb.getString(key);
valueMap.put(key,value);
}
}
public static String getValue(String key){
return valueMap.get(key);
}
}
测试
public static void main(String[] args) {
System.out.println(ConfigConstant.getValue("my.name") +
"," + ConfigConstant.getValue("my.age"));
}
测试结果