首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java到XSD或XSD到Java

Java到XSD或XSD到Java
EN

Stack Overflow用户
提问于 2012-10-18 04:40:24
回答 4查看 11.9K关注 0票数 7

我知道,使用JAXB,您可以使用generate Java files from an XSD,也可以使用generate the XSD from annotated POJOs。每种方法的优缺点是什么?一个整体上比另一个更好吗?

我们基本上希望将事件序列化为XML格式的日志。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-10-18 05:03:05

归根结底,这取决于你想关注的地方:

如果XML Schema是最重要的,则为

然后,最好从XML模式开始并生成一个JAXB模型。JAXB (JSR-222)实现无法生成XML模式的一些细节:

  • 简单类型上除0、1或无界外的maxOccurs
  • 多个方面
  • 模型组

如果对象模型是最重要的,则为。

如果您使用Java模型的目的不仅仅是在对象和XML之间进行转换(例如,将它与JPA一起用于持久化),那么我建议您从Java对象开始。这将给你最好的控制。

票数 6
EN

Stack Overflow用户

发布于 2012-10-18 04:42:57

这取决于您的需求和与启动点相关的场景。

根据您的要求,使用generate Java files from an XSD,因为您希望首先定义输出(XML)格式,该格式应由Java支持。

票数 1
EN

Stack Overflow用户

发布于 2012-10-18 04:56:09

考虑到XML的主要特点之一是成为一种可移植的数据传输格式,无论平台或语言如何都可以使用,我将避免从任何特定的编程语言生成XSD,这是经验法则。如果您知道您只在Java端点之间通信,这可能无关紧要(但您确定这将永远是正确的吗?)。

在其他条件相同的情况下,最好以编程语言中立的方式定义接口/模式。

这个原则有很多例外,特别是当你正在与现有的或遗留的代码集成时……

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12943011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档