2012-11-05 36 views
1

我需要在两个不同系统之间移动数学联赛数据,这两个系统都是用Java编写的。这些数据来自Java Web应用程序,由MySQL数据库提供支持,在这里我有学校和学生的表格,都有唯一的ID号码。数据需要导出为一种格式,我可以在台式机客户端脱机阅读,用于在2月份锦标赛事件当天记录分数。从数据库设计决策中导出XML和JSON

客户端将数据立即存储为CSV文件,该文件具有让人们可以将整个“数据库”加载到Excel中以查看每个团队中每个学生的分数的好处。去年这种格式是有问题的,因为不知何故数据变得腐败(数据录入有一些冗余,因为有些人在记分卡上填写了错误的团队编号,然后我的数据录入团队将不良数据输入系统)

我想更新客户端以更加结构化的方式存储数据,并将CSV文件保留为仅导出功能。我会选择XML序列化,因为我最熟悉这一点。但我很好奇JSON或YAML的优点。 同时,我需要向Web应用程序添加一些导出功能,以便将某些数据转换为桌面客户端可以读取的格式。网络应用程序(数学团队教练)的用户将选择哪些学生将参加比赛,然后我将下载一些我的客户可以阅读的文件。数据结构如下:

team id 
school name 
student1 
student2 
student3 
student4 
student5 

其中每个学生对象由一个ID号,名称和几个分数字段组成。

直XML是最有意义的吗?否则会更容易?

回答

2

我对XML的主要反对意见是它可以是非常详细的。您似乎在可验证结构非常重要的环境中处理相对较少的数据。我想我会用XML来解决这个问题。

2

帕特里夏是对的(你应该接受她的回答)。 XML是您尝试执行的最佳格式。

人们选择其他:

  • JSON - 对于客户端JavaScript,因此Web应用和带宽/延迟速度。
  • YAML - 用于人类可读的配置。

现在,大部分用Java生成XML的最好方法是JAXB。您也可以看看jOOQ as it will allow you to query the result set and turn it to XML and/or various other formats

+0

谢谢你提醒我关于jOOQ - 这可能会有所帮助。 – Thorn