Java正在tomcat bin文件夹中创建文件

时间:2015-03-10 18:27:55

标签: java tomcat

我编写了一个java程序,我正在创建一个文件。

BufferedWriter writer = 
    new BufferedWriter(
        new OutputStreamWriter(
            new FileOutputStream("myfile.txt"))

它正在当前文件夹(我的项目文件夹)中创建文件。直到这里一切都很完美。现在我设计了一个servlet并调用这个类。现在,该文件已在tomcat bin文件夹中创建。我是否需要对tomcat中的classpathserver.xmlcontext.xml进行任何更改?

1 个答案:

答案 0 :(得分:2)

原因:

您的程序正在"当前工作目录中创建一个新文件"。

因为它是在Tomcat内部运行的servlet,所以"当前目录"碰巧是Tomcat" bin" 。目录

SUGGESTIONS:

  • 如果可能,请使用完全限定的路径("/tmp/myfile.text"

  • 您还可以相对于getServletContext()编写文件:

How to store a file on a server(web container) through a Java EE web application?

  • 您可以使用相对路径,并参数化属性文件(WEB-INF\myprog.properties)或JVM参数(-D filepath=/my/file/path)中的路径。
相关问题