使用没有XSD架构文件的XML文件生成Java绑定类?使用任何Castor或JAXB框架

时间:2011-09-16 15:24:22

标签: java xml jaxb castor

我需要从XML文件创建java模型类(绑定类)。不幸的是我没有XSD架构。有许多已经存在的XML。

奇怪的是,Castor或JAXB都使用XSD架构来生成绑定模型类。如果您没有架构怎么办?并非所有XML都是使用Schema创建的!

2 个答案:

答案 0 :(得分:3)

您可以使用Trang之类的架构推理工具。它可以从xsd生成xml。然后,您可以调整生成的架构或直接将其提供给JAXB / Castor等。

答案 1 :(得分:2)

XML绑定技术不会从XML生成Java类的原因是它具有额外的复杂性:

  • 单个XML元素是单个元素还是大小为1的集合?
  • 示例XML中的数据看起来像一个int,但是允许使用String内容吗?

你有几个选择。首先,您可以使用工具从XML生成XML模式,然后从中生成类。或者您可以注释现有的类以将它们映射到XML: