我们希望修改配置文件后无需重新编译打包,所以配置文件一般放在一个叫conf的外部目录中。
代码如下,关键是import的类,此类API的使用,以及getProperty从命令行-D获取参数。
import com.typesafe.config.Config;
import com.typesafe.config.ConfigFactory;
public class MyClass {
private String name1;
private String name2;
private String name3;
private int int1;
public void parseConfigFile(String configPath) {
Config config = ConfigFactory.parseFile(new File(configPath));
this.name1= config.getString("name1");
this.name2 = config.getString("field.name2");
this.name3= config.getString("field.name3");
this.int1= config.getInt("field.int1");
}
public static void main(String[] args) {
MyClass myclass = new MyClass();
myclass.parseConfigFile(System.getProperty("configPath"));
//后续逻辑
}
}
对应文件如下,格式与json略有不同,特此记录:
name1 = "aaa"
field {
name2= "bbb"
name3= "ccc"
int1= 111
}