Java 对于一个简单的应用程序,我应该使用XML文件、真实的数据库还是其他什么?

Java 对于一个简单的应用程序,我应该使用XML文件、真实的数据库还是其他什么?,java,xml,database,storage,Java,Xml,Database,Storage,我目前正在开发一个简单的Java应用程序,用于计算和绘制公司不同类型的利润。一个公司可以有很多分支机构,每个分支机构可以有很多年,每年最多可以有12个月 层次结构如下所示: -company +branch -branch +year -year +month -month 我的目的是让数据存储对用户来说尽可能简单。我心目中的结构是一个XML文件,它存储了与单个公司有关的所有内容。可以作为单个XML文件,也可以具有多个XML文件,这些

我目前正在开发一个简单的Java应用程序,用于计算和绘制公司不同类型的利润。一个公司可以有很多分支机构,每个分支机构可以有很多年,每年最多可以有12个月

层次结构如下所示:

-company
   +branch
   -branch
     +year
     -year
       +month
       -month
我的目的是让数据存储对用户来说尽可能简单。我心目中的结构是一个XML文件,它存储了与单个公司有关的所有内容。可以作为单个XML文件,也可以具有多个XML文件,这些文件通过唯一ID链接在一起

与使用数据库相比,这两个选项还允许用户轻松传输数据

现在数据库的问题让我无法接受,那就是用户必须自己设置一个数据库,如果他们不是技术型的,这对他们来说是非常困难的


您认为我应该选择XML文件、数据库还是其他什么?

我肯定会选择数据库:

  • 你有关系数据,这是DBs非常擅长的事情
  • 您可以在关系数据库中查询数据,这比在XML中要容易得多
  • 在DB中CRUD操作(创建、读取、更新、删除)比在XML中容易得多

例如,通过嵌入应用程序,您可以避免用户需要安装DB引擎。

我肯定会选择DB:

  • 你有关系数据,这是DBs非常擅长的事情
  • 您可以在关系数据库中查询数据,这比在XML中要容易得多
  • 在DB中CRUD操作(创建、读取、更新、删除)比在XML中容易得多

例如,您可以通过嵌入应用程序来避免用户安装数据库引擎。

使用XML会更加复杂,XML更像是一种交换格式,而不是数据库的替代品


您可以使用可嵌入数据库,如或/,在这种情况下,用户不必设置数据库。数据只会在本地存储,所以如果你的应用程序还可以的话,你可以考虑它。

使用XML会更复杂,XML更多的是交换格式,而不是DB的替代。
您可以使用可嵌入数据库,如或/,在这种情况下,用户不必设置数据库。数据只会在本地存储,所以如果你的应用程序还可以,你可以考虑它。

< P>如果它是一个单用户应用程序,并且数据量不太可能超过几兆字节,然后将XML文件用于持久性存储可能很有意义,因为它降低了包及其安装过程的复杂性。但是您限制了可伸缩性:这明智吗?

如果它是一个单用户应用程序,并且数据量不太可能超过几兆字节,那么使用XML文件进行持久存储可能很有意义,因为它可以降低包及其安装过程的复杂性。但是您限制了可伸缩性:这明智吗