首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Java web应用程序应该将其数据存储在哪里?

Java web应用程序应该将其数据存储在哪里?
EN

Stack Overflow用户
提问于 2010-07-02 01:49:46
回答 3查看 9.1K关注 0票数 18

将我的Java web应用程序(myapp.war)部署到Ubuntu10.04上Tomcat上的webapps目录中。

此应用程序需要将一些数据保存在文件中。但是运行Tomcat (tomcat6)的用户没有主目录/usr/share/tomcat6/的写访问权限,也没有当前工作目录/var/lib/tomcat6/的写访问权限,因为它们都属于root

那么,web应用程序应该将数据存储在哪里呢?我希望它不是webapps目录中解压出来的归档文件。这可能很容易被意外删除。可以配置Tomcat,而不是提取.war文件。那么就不会再有提取的数据了。

也许/var/lib/tomcat6/应该属于用户tomcat6 ant,这是Ubuntu的一个bug吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-07-02 02:34:46

我在Launchpad上找到了解决方案。/var/lib/tomcat6/webapps/是可写的。这意味着,以下内容可以正常工作:

代码语言:javascript
复制
File myFile = new File("webapps/myfile.txt");
票数 2
EN

Stack Overflow用户

发布于 2010-07-02 02:17:36

我认为这取决于您正在处理的数据类型。大多数情况下,数据进入数据库只是因为执行CRUD既快又容易。如果你想存储本地化的用户配置,并且你不关心它的可移植性,也许你可以在user.home下存储,我为我的一个项目这样做了,它工作得很好。尽管如此,我真的不认为在这方面有任何最佳实践,数据库似乎是最明显的选择,因为你可以在它上面做很多不同的任务,而且它们中的大多数都是免费的。:)

票数 2
EN

Stack Overflow用户

发布于 2010-07-02 01:58:28

我还没有看到任何关于您应该在本地存储此类数据的具体指导-可能是因为您通常会将此类数据存储在数据库中。

当我需要存储像这样的快速和脏数据时,我将它存储在一个专门用于该数据的文件系统上,以便将它与其他可能会被其他活动占用的区域隔离开来。到目前为止,这种方法还没有出现任何问题。此外,如果它很重要,请确保将其存储在要备份它的位置:)

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

https://stackoverflow.com/questions/3160343

复制
相关文章

相似问题

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