Eclipse / Linux - Java Web应用程序。
我在项目中添加了一个名为dao.properties的文件。我把它放在一个包中:com.cdp.dao。我使用此文件的类在同一个包中。 当我尝试加载它时,我有一个
java.io.FileNotFoundException
/myproject/src/com/cdp/dao/dao.properties (No such file or directory) OR
dao.properties (No such file or directory)
这是我的代码:
Properties prop;
FileInputStream fis;
File file = new File("/myproject/src/com/cdp/dao/dao.properties");
//File file = new File("dao.properties"); doesn't work either
try {
prop = new Properties();
fis = new FileInputStream(file);
prop.load(fis);
dbUrl = prop.getProperty("dbUrl");
user = prop.getProperty("user");
pwd = prop.getProperty("pwd");
driver = prop.getProperty("driver");
fis.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
答案 0 :(得分:1)
使用
this.getClass().getResourceAsStream("dao.properties");
加载属性文件
答案 1 :(得分:0)
从Class开始,路径相对于类的包,除非
你包含一个前导斜杠,所以如果你不想使用当前包,
包括这样的斜杠:
InputStream in = this.getClass().getResourceAsStream("/dir/SomeTextFile.txt");
但如果您需要使用类路径,请使用下面的文件名
InputStream in = this.getClass().getResourceAsStream("dao.properties");