Skip to content

Instantly share code, notes, and snippets.

@bfchengnuo
Last active September 7, 2017 06:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bfchengnuo/6b6d2ac289d2b23c22d805a592ba55c2 to your computer and use it in GitHub Desktop.
Save bfchengnuo/6b6d2ac289d2b23c22d805a592ba55c2 to your computer and use it in GitHub Desktop.
JavaWeb读取Properties
// 此方法读取 / 指的是此 web 应用
InputStream resourceAsStream = this.getServletContext().getResourceAsStream("/WEB-INF/classes/a.properties");
// 如果不是 servlet 读取,使用类装载器,但是数据不能太大,否则会内存溢出
// 这里path中 / 指的是是源码目录也就是经常用的 src
InputStream resourceAsStream = ParamTest.class.getClassLoader().getResourceAsStream(path)
Properties prope = new Properties();
prope.load(resourceAsStream);
String str = prope.getProperty("key");
// 类装载器只加载一次,文件修改并不会重新加载
// 可以使用类装载器获取文件的路径,再用 FileInputStream 去读
// FileInputStream 读取建议使用绝对路径,因为相对路径是对于 JVM 的启动目录
String path = HelloWorld.class.getClassLoader().getResourceAsStream("com/bfchengnuo/xx").getPath()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment