【问题标题】:java desktop and web application using the same filepath使用相同文件路径的 Java 桌面和 Web 应用程序
【发布时间】:2016-10-07 14:45:18
【问题描述】:

我编写了一个带有类(比如 ClassA)的桌面 Java 应用程序,它读取文件的内容、处理它并返回一些结果。使用

相对于项目指定文件名

文件输入 = new File("config.xml");

现在,我想将项目升级为 Web 项目。我编写了一个 servlet,它调用同一个 java 类(即 ClassA)来读取同一个文件的内容,但这次我收到一条错误消息,提示找不到文件。

如何重构我的代码,以便桌面版和网页版都能顺利运行。

【问题讨论】:

    标签: java web-applications desktop-application filepath


    【解决方案1】:

    只需将文件 config.xml 复制到 Web 服务器上的适当位置,例如public_html/www/

    Web 应用程序的“工作目录”不同 - 取决于您将其部署到的 Web 服务器的配置。

    【讨论】:

      【解决方案2】:

      如果你在没有指定路径的情况下读取文件,它是从当前目录读取的,你可以使用 System.getProperty("user.dir"); 访问它

      因此,您可以尝试找出 System.getProperty("user.dir") 在您的 Web 应用程序中返回的值并将文件放在那里。 但这可能因环境和 servlet 服务器(Tomcat 等)而异,可能不是可靠的解决方案。

      另一种方法是更改​​您的代码,使其从 user.home 目录中读取文件并将文件放在那里。

      【讨论】:

        猜你喜欢
        • 2011-01-24
        • 1970-01-01
        • 1970-01-01
        • 2016-02-24
        • 1970-01-01
        • 2012-03-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多