首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tomcat - FileNotFoundException

Tomcat - FileNotFoundException
EN

Stack Overflow用户
提问于 2013-09-09 10:27:40
回答 2查看 3.7K关注 0票数 2

我在我的tomcat服务器上部署了一个web应用程序。我的文件夹结构是TOMCAT_HOME/webapps/segnalazioni_degrado/config.

config文件夹包含一些属性文件。当我在开发模式(Eclipse)中运行我的应用程序时,一切正常工作,但是由于我将它部署在Tomcat上,所以我得到了文件创建的异常。这就是我在服务器上加载.properties文件的方式:

代码语言:javascript
复制
[...]
Properties props = new Properties();
    try {
        props.load(new FileInputStream("config/DBconfig.properties"));

    } catch (IOException e) {
        System.out.println(e.getMessage());
    }
    url = props.getProperty("url");
    user = props.getProperty("user");
    password = props.getProperty("password");
[...]

我做错了什么吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-09-09 10:37:58

每个webapp都有自己的tomcat类加载程序。ClassLoader.getSystemResource将使用用于加载引导程序和tomcat应用程序的系统类加载器。但是,系统类装入器不知道任何关于您的and应用程序的信息,而且它是类路径。使用正确的类加载程序是必不可少的。

访问正确的类加载程序有很多解决方案。一种解决方案是使用ClassLoader#getResource

请查一下这个例子

票数 2
EN

Stack Overflow用户

发布于 2013-09-09 10:32:17

我做错了什么吗?

很明显是的。如果一切顺利,你就不会有例外。

您应该将该资源作为流从类路径加载。

这意味着你的战争应该是这样的:

代码语言:javascript
复制
WEB-INF/classes/config/DBconfig.properties

由于您正在使用Tomcat,我建议您学习如何设置JNDI数据源连接池。以这种方式将数据库连接信息外部化。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18696196

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档