控制台版本有创建数据库连接的代码:
private static final String PATH_TO_PROPERTIES = "src/main/resources/config.properties";
Properties prop = new Properties();
InputStream fis = null;
try {
fis = new FileInputStream(PATH_TO_PROPERTIES);
prop.load(fis);
Class.forName(prop.getProperty("driver"));
String url = prop.getProperty("url_file");
con = DriverManager.getConnection(url, prop);
} catch (IOException | SQLException | ClassNotFoundException e) {
throw new Exception(e);
}
一切正常。
当我尝试将应用程序部署到本地 Tomcat 时,config.properties 文件最终位于 WEB-INF 文件夹中,因此出现异常。搜索时,建议大家使用如下构造:
ClassLoader loader = Thread.currentThread().getContextClassLoader();
InputStream foo = loader.getResourceAsStream("/WEB-INF/config.properties");
已尝试,但 config.properties 以任何方式都不可见。如果您不使用属性并明确规定所有内容,则一切正常。
我不知道如何在 Web 项目中使用属性。
删节版