我目前正在开发一个简单的Java应用程序,用于计算和绘制公司的不同类型的利润。公司可以拥有多个分支机构,每个分支机构可以有多年,每年最长可达12个月。
层次结构如下所示:
-company
+branch
-branch
+year
-year
+month
-month
我的目的是让数据存储对用户来说尽可能简单。我想到的结构是一个XML文件,它存储了与单个公司有关的所有内容。可以是单个XML文件,也可以是具有唯一ID链接在一起的多个XML文件。
这两个选项还允许用户轻松传输数据,就像使用数据库一样。
现在阻止我的数据库的问题是,用户必须自己设置数据库,如果他们不是技术类型,这对他们来说将非常困难。
您认为我应该选择XML文件,数据库还是其他什么?
答案 0 :(得分:3)
我会狡猾地去找DB:
例如,您可以通过在应用中嵌入SQLite来避免用户安装数据库引擎。
答案 1 :(得分:3)
使用XML会更复杂,XML更像是一种交换格式,而不是数据库的替代品。
您可以使用可嵌入的数据库,例如H2或Apache Derby / JavaDB,在这种情况下,用户不必设置数据库。数据将仅存储在本地,因此如果您的应用程序可以使用,则可以考虑它。
答案 2 :(得分:0)
如果它是单用户应用程序并且数据量不可能超过几兆字节,那么使用XML文件作为持久存储可能很有意义,因为它降低了程序包及其安装过程的复杂性。但是你限制了可扩展性:那是明智的吗?