在Java Web应用程序中保存文件到服务器

6

我使用Vaadin作为我的Web应用程序,在应用程序中生成XML文件,并且想要将这些文件存储在服务器上。我进行了以下操作:

context.getHttpSession().getServletContext().getRealPath("/");

我在Tomcat上运行Web应用程序,并设法将文件保存在应用程序文件夹下。
.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/my_app_folder/

与META-INF、WEB-INF和VAADIN文件夹处于同一级别。如果我想将文件保存在服务器存储中并将文件路径保存在数据库中,应该在哪里保存这些文件?谢谢

1个回答

2

您的Web应用程序在服务器上的JVM中运行。您的应用程序的根文件路径通常是Tomcat服务器的文件夹。要获取此文件夹路径,您可以轻松执行以下操作:

String sRootPath = new File("").getAbsolutePath();

您可以将文件保存在您创建的子文件夹中,或者在服务器文件系统的某个额外文件夹中。


当我按照你建议的方法获取路径时,它并没有给我Tomcat服务器的路径,而是Eclipse的路径,即:/Applications/eclipse/Eclipse.app/Contents/MacOS。在我看来,我认为这不是正确的位置。 - Duc
这是因为你在Eclipse中运行/启动Tomcat。一旦你在预安装的Tomcat服务器上部署应用程序,你就会得到那个目录。 - nexus

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接