在Tomcat环境中定位Java JSP应用程序文件的最佳实践

时间:2012-06-11 15:34:27

标签: file jsp tomcat

我的Java JSP应用程序需要在Tomcat Web服务器上存储永久文件。目前,我将文件保存在系统的“/ temp”文件夹中。但是这个文件夹会不时被清除。此外,当前的解决方案是硬编码的,这使得它不太灵活(例如,当移动到另一个服务器时)。

我现在想在定义访问此配置中的永久目录时有最佳做法。详细说明,定义app文件目录的最佳位置在哪里,以及如何从我的java应用程序中访问它?这种设置的目标是在(a)更新应用程序(即放置新的war文件),以及(b)从一个服务器移动到另一个服务器和OS(例如Unix,Windows,MacOS)时花费最少的努力。

到目前为止,我在这个主题上所做的研究表明,以下是解决方案(可能包括其他方面):

1。)在Tomcat安装目录中使用自定义子目录。

  • 如果我在tomcat上部署新版本,文件会发生什么 战争文件?
  • 我在哪里定义要访问的目录 在我的Java应用程序中?

2.)在文件系统的单独目录中。

  • 哪些是很好的位置或方法来获取位置而不知道 系统?
  • 我在哪里定义要访问的目录 在我的Java应用程序中?

感谢您的建议!

1 个答案:

答案 0 :(得分:1)

基本上,您正在以某些文件的形式创建“数据库”。在Java EE和servlet容器的世界中,唯一真正通用的方法是通过JNDI配置这样的资源。 Tomcat和其他容器没有“为webapps持久存储的地方”的概念。如果webapp需要持久存储,则需要通过JNDI或-D配置它,或者通过向其发布内容来告诉它。你可以借用任何惯例或标准练习。

您可以按照惯例选择文件系统路径名并记录该惯例(例如,Linux上的/ var / something,类似于Windows)。但是,你不一定会与其他任何人一致。