如何从XML生成JAXB类

Dan*_*nDC 59 java xml jaxb

我需要从xml生成不提供模式的类.我知道这几乎没用,但事实是我们有xml,它是结构化的,我们应该能够从xml创建一个模型.在过去,我已经手工完成了,但是我正在使用的当前xml文档非常大,而且我可能更好地花时间构建满足我需要的东西.但是,我猜它已经完成了,我找不到它.

有什么指针吗?

Bal*_*a R 66

有许多可用的工具(快速谷歌搜索应该会提取一些),可以从XML生成XSD,假设几乎所有的字符串类型.您应该能够使用该XSD运行JAXB来获取类.

这是一个在线工具,可以帮助您实现这一目标.

这是一个屏幕上限: 在此输入图像描述


Jam*_*vec 12

从xml文件中,您可以创建XML架构定义(XSD)文件.一旦你有了XSD,你就能够生成代码,需要它用于java,C#,C++或上述所有代码.

如果您有Visual Studio,则可以使用xsd.exe生成XSD文件.

参考文献:

  • www.xmlforasp.net/CodeBank/System_Xml_Schema/BuildSchema/BuildXMLSchema.aspx

  • msdn.microsoft.com/en-us/library/x6c1kb0s(v=vs.71).aspx

  • 命令语法:xsd file.xml [/ outputdir:directory]

  • 所以"C:\ Program Files\Microsoft SDKs\Windows\v6.0A\Bin\x64\xsd.exe"example.xml在与xml文件相同的目录中生成example.xsd文件.

XSD到Java:参考:

XSD到C++:参考文献:

  • stackoverflow.com/questions/445905/xml-schema-to-c-classes
  • www.codesynthesis.com/products/xsd/

XSD到C#:参考:

  • quickstart.developerfusion.co.uk/quickstart/howto/doc/xmlserialization/XSDToCls.aspx
  • 命令语法:"C:\ Program Files\Microsoft SDKs\Windows\v6.0A\Bin\x64\xsd.exe"-c -l:c#-n:SomeNameSpace example.xsd