Java中读取配置⽂件的⽅式1、FileInputStream
通过实现ServletContext接⼝来读取⽂件路径
String path = "/WEB-INF/jdbc.properties"; //读取WEB-INF中的配置⽂件
String realPath = ServletContext().getRealPath(path);
//构造编码为utf-8的⽂件输⼊流的字符输⼊流
InputStreamReader reader =new InputStreamReader(new FileInputStream(realPath),"utf-8");
//⽤Properties解析输⼊流⽣成⼀个key-value的map
Properties props = new Properties();
//load个⼈建议还是⽤Reader来读,因为reader体系中有个InputStreamReader可以指定编码
props.load(reader);
String ip= Property("ip");
System.out.println(ip);
2、通过ResourceBundle读取配置⽂件
调⽤⽅式:
西方的劫难* 1.配置⽂件放在resource源包下,不⽤加后缀
* AllMessage("message");
* 2.放在包⾥⾯的
* AllMessage("ssage");
public static List<String> getAllMessage(String propertyName) {
// 获得资源包
ResourceBundle rb = im());
// 通过资源包拿到所有的key
Enumeration<String> allKey = rb.getKeys();
// 遍历key 得到 value
List<String> valList = new ArrayList<String>();
while (allKey.hasMoreElements()) {
String key = Element();
String value = (String) rb.getString(key);
valList.add(value);
}
return valList;
}
3、使⽤ClassLoader读取配置⽂件
/
字的演变过程**获取的是classes路径下的⽂件
清明节的由来作文* 优点是:可以在⾮Web应⽤中读取配置资源信息,可以读取任意的资源⽂件信息
梦见前男朋友* 缺点:只能加载类classes下⾯的资源⽂件。
* 如果要加上路径的话:com/fileReader.properties
鹡鸰女神漫画*/
private static void classLoador(){如何取得root权限
//获取⽂件流
InputStream is=ClassLoader().getResourceAsStream("fileReader.properties");
//获取⽂件的位置
String filePath=ClassLoader().getResource("fileReader.properties").getFile();
System.out.println(filePath);
}
4、getResouceAsStream
ResourceAsStream 与 classloader 的不同之处在于使⽤的是当前类的相对路径。ClassLoader().getResourceAsStream("./fileReader.properties");
5、PropertiesLoaderUtils ⼯具类
Spring 提供的 PropertiesLoaderUtils 允许您直接通过基于类路径的⽂件地址加载属性资源。
最⼤的好处就是:实时加载配置⽂件,修改后⽴即⽣效,不必重启。
Properties props = new Properties();
while(true){
props=PropertiesLoaderUtils.loadAllProperties("message.properties");
for(Object key:props.keySet()){
System.out.print(key+":");
System.out.(key));
}
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论