用java存储数据的方法

用java存储数据的方法,java,csv,Java,Csv,在我的软件中,我想存储一些数据,以便以后使用。类似于保存数据的数据库: Date, source path, destination path, and an array of file names. 另一个用于保存ftp连接信息的表: Host, port, username and password 我需要知道哪些方法可用于存储和解析这些数据。我注意到有一种叫做.csv的文件类型,这是我的选择吗?还有其他选择吗?我认为这在很大程度上取决于您要存储多少数据以及需要如何访问数据 如果您的应用

在我的软件中,我想存储一些数据,以便以后使用。类似于保存数据的数据库:

Date, source path, destination path, and an array of file names.
另一个用于保存ftp连接信息的表:

Host, port, username and password

我需要知道哪些方法可用于存储和解析这些数据。我注意到有一种叫做.csv的文件类型,这是我的选择吗?还有其他选择吗?

我认为这在很大程度上取决于您要存储多少数据以及需要如何访问数据

如果您的应用程序将要收集大量结构化数据,例如用户配置文件或产品信息,也就是说,如果您的应用程序都是关于数据库的,那么是的,正如其他人所评论的,某种SQL数据库是有意义的

如果您的需求更多地是存储一些“会话”信息,例如GUI表单的最后一个状态,那么您可能只想序列化数据并将其写入一个简单的文本文件

一种简单的方法是以人类可读的格式(如JSON)序列化数据,然后将文本写入文件,然后在需要从存储中恢复时将其读回并反序列化

如果这就是您想要的,请看一看(来自google),它提供了一个非常简单的方法,可以将java对象转换为JSON,然后再转换回来


JSON只是文本,所以您可以将其读写到一个简单的文本文件中。

。cvs
文件是与java无关的excel文档。如果您真的想使用“表”的概念来存储数据,那么您应该简单地使用SQL。@Jean-FrançoisSavard实际上不是,cvs只是一种用于存储逗号分隔值的数据格式。恰好Excel可以使用它。@James_Parsons说得对。实际上为了简单起见,我以excel为例,但您的注释完成了我想要指定的内容(它只是一种数据格式)。然而,这并没有改变我评论的最后一部分。感谢您添加的详细信息。Dan如果您确实需要使用“表”概念存储数据,请遵循SQL的路径,否则最终维护起来会很糟糕。在您害怕学习SQL的情况下,您可能想知道基础知识可以在几个小时甚至几分钟内学习,如果您仅限于您给我们的示例。@Dan不客气。没有必要将此作为答案发布,只是为了让您接受它。这里的目标是知识共享,而且(无意冒犯),但我非常怀疑这个问题的答案对其他任何人都有帮助,因为这方面有很多信息。祝您在学习SQL的基础上好运。感谢您提供的有用答案。我尝试过GSON,似乎很容易将数据保存在文件中并解析它们。只是有些事我还不确定。因为很明显,软件将在未来发布。是否可以将.json文件保存在其中一个项目文件夹中?我的意思是,GSON是否给出了这个选项?ThanksGSON只是将对象转换为json(人类可读的文本格式)并返回。您可以随意存储json。