Java 将数据保存到文件或数据库

Java 将数据保存到文件或数据库,java,persistent-storage,Java,Persistent Storage,我开始开发一个新的Java桌面应用程序,它应该可以帮助我和我的同事学习词汇。它将包含大约700个单词,一些文本(指向其中包含的单词)和一些图像(还不确定该部分)。数据将永远不会更改,我希望程序能够脱机运行 问题是:我应该使用数据库、文本文件还是将数据序列化为文件?或者,如果有其他我不知道的选择?如果你能详细解释你的选择,我会很高兴的 如果数据从未更改,并且只有700个字,那么使用文件可能是最简单的。 如果您的数据有点复杂,有很多字段,并且不断更新,那么数据库会更好,但csv文件仍然可以使用 如果

我开始开发一个新的Java桌面应用程序,它应该可以帮助我和我的同事学习词汇。它将包含大约700个单词,一些文本(指向其中包含的单词)和一些图像(还不确定该部分)。数据将永远不会更改,我希望程序能够脱机运行


问题是:我应该使用数据库、文本文件还是将数据序列化为文件?或者,如果有其他我不知道的选择?如果你能详细解释你的选择,我会很高兴的

如果数据从未更改,并且只有700个字,那么使用文件可能是最简单的。
如果您的数据有点复杂,有很多字段,并且不断更新,那么数据库会更好,但csv文件仍然可以使用

如果数据从未更改,并且只有700个字,那么使用文件可能是最简单的。

如果您的数据有点复杂,有很多字段,并且不断更新,那么数据库会更好,但csv文件仍然可以使用

由于您希望脱机访问此数据且数据从不更改,我认为最好的选择是只使用文本文件,这将在访问和速度方面更有效。

由于您希望脱机访问此数据且数据从不更改,我认为最好的选择是只使用文本文件,这将在访问和速度方面更加有效。

将内存中的所有数据作为可序列化的Java对象保存,并在应用程序未运行时将其序列化存储。评估-非常好的解决方案,非常适合您。

将内存中的所有数据作为可序列化Java对象保存,并在应用程序未运行时将其序列化存储。评估-非常好的解决方案,非常适合您。

您是否计划开发web应用程序、Android应用程序、桌面应用程序或其他应用程序?我们忘了提到这一点。这是一个桌面应用程序。那么一个普通的数据库就不存在了,除非你想安装一个安装数据库的安装程序。也许使用平面文件对您来说是最方便的。平面文件是指文本文件,还是我应该将数据序列化到其中?我可以想象,通过序列化,我可以更轻松地从文字中创建对象,然后将它们链接到文本。你是在计划web应用程序、Android应用程序、桌面应用程序还是其他什么?我们忘了提到这一点。这是一个桌面应用程序。那么一个普通的数据库就不存在了,除非你想安装一个安装数据库的安装程序。也许使用平面文件对您来说是最方便的。平面文件是指文本文件,还是我应该将数据序列化到其中?我可以想象,对我来说,使用序列化可以更容易地从单词中创建对象,然后将它们链接到文本。有了这么小的条目,这两种方法都可以非常快速地工作,效率并不是一个真正的因素。但我建议使用.txt文件或.csv文件,您可以使用逗号分隔符分隔单词。FWIW我更喜欢用制表符分隔;它们在“CSV”文件中的文本类型中更为罕见。或者,你可以每行有一个单词,这样,您就可以在文件中循环,将每一行加载到字符串列表中。逗号分隔符的问题是,文本将是普通的文章,因此在其中包含逗号是很常见的。两个不同的文件似乎是最好的选择。谢谢你的建议。:-)对于如此小的条目,这两种方法都会非常快地工作,效率并不是一个真正的因素。但我建议使用.txt文件或.csv文件,您可以使用逗号分隔符分隔单词。FWIW我更喜欢用制表符分隔;它们在“CSV”文件中的文本类型中更为罕见。或者,你可以每行有一个单词,这样,您就可以在文件中循环,将每一行加载到字符串列表中。逗号分隔符的问题是,文本将是普通的文章,因此在其中包含逗号是很常见的。两个不同的文件似乎是最好的选择。谢谢你的建议。:-)