【发布时间】:2014-11-01 16:29:59
【问题描述】:
我正在尝试使用属性文件来存储我的数据库连接详细信息。当我创建一个 Java 应用程序并给出文件名时它起作用了,因为我将属性文件放在项目根文件夹中。
但是,当我在我的 Web 应用程序中尝试此操作时,我得到了 FileNotFoundException。我在项目节点下创建了一个 res 目录来保存属性文件。然后我将路径指定为“res/db.properties”,但出现异常。我也尝试将此文件放在配置文件目录下,但仍然遇到相同的异常。
这是我的代码 -
import java.io.FileInputStream;
import java.io.IOException;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.util.Properties;
/**
*
* @author aj
*/
public class getConfigValues {
public String[] getPropValues() {
String[] props = new String[4];
try {
Properties prop = new Properties();
String propFileName = "res/db.properties";
InputStream input = null;
input = new FileInputStream(propFileName);
prop.load(input);
props[0] = prop.getProperty("dbURL");
props[1] = prop.getProperty("driverClass");
props[2] = prop.getProperty("user");
props[3] = prop.getProperty("password");
return props;
} catch (FileNotFoundException ip) {
props[0] = "not found";
return props;
} catch (IOException i) {
props[0] = "IO";
return props;
}
}
}
我在这里做错了什么?
【问题讨论】:
-
res是源文件夹吗?直接尝试db.properties。 -
是的,我在发布之前已经尝试过了。我将
res添加为源包文件夹,然后运行Web 应用程序,但仍然得到FileNotFoundException。直接给出文件名也不起作用(那是我的第一个设置 - 项目根目录中的 prop 文件)。
标签: java fileinputstream properties-file