将数据存储在数据库或文件中?

时间:2011-07-14 08:05:05

标签: java gwt mvp

我有些疑惑,我正在使用MVP模型在GWT中开发Web应用程序。 假设我正在实施一个论坛,因此用户可以发表评论,我想知道如何保留这些数据?

例如,一篇文章可能有2000 .. 3000个字符,我在考虑文件..每个类别都有自己的帖子,所以我可以存储每个文件的类别.. 或者其他想法是散列数据..

我很高兴知道更多的意见和方法..

谢谢你们。

编辑。

我从评论中看到数据库是正确的决定,但是我应该直接插入帖子还是以某种方式重做它然后插入?

3 个答案:

答案 0 :(得分:3)

数据库。没有选择。

此外,数据库提供了一种更简单的搜索,索引和扩展数据的方式,没有任何限制。例如,如果您确定每个帖子都可以拥有它的笑脸 - 这是数据库中1个额外列的问题。但是对于文件,将所有文件转换为新格式将会非常痛苦。

另外,相关数据怎么样?正如@The Elite Gentlemen所提到的,将相关数据存储在文件中也很痛苦。是的,您将按目录名称对类别中的帖子编制索引,但是如何保存帖子的作者?链接到他的个人资料?作者拥有的帖子数量还是他的头像?

答案 1 :(得分:1)

在您的位置我不会将数据放在文件中。原因很简单 - 您再次编写另一个数据库。 如果您使用文件,还需要时间来保留此系统。数据库经过检查和测试,因此您需要的维护时间更短。 对于论坛,您可以考虑多级缓存。

数据库中的第一级 - 例如用于某些表内存(但有风险),数据库中的过程语言和索引等标准工具。

http中的第二级 - 如果你使用gwt,你可以从论坛缓存线程。为此你不需要gwt机制,只需要特殊的服务器配置。

第三级 - 这是gwt / javascripts - 在gwt浏览客户端级别,你可以保留新创建的论坛帖子。

足够迅速...

答案 2 :(得分:0)

由于CPU过载,在文件中保存数据会导致运行时错误。实际使用数据库是唯一的方法