createXyz(Xyz xyz)"这样的方法签名生成了什么xml模式上下文?-6ren"> createXyz(Xyz xyz)"这样的方法签名生成了什么xml模式上下文?-我注意到定义了 simpleType 或 complexType,并且在模式文件中的多个元素的声明中使用了这些类型,simpleType 或 complexType 生成了一个方法签名作为“JAXBE-6ren">
gpt4 book ai didi

java - xjc的ObjectFactory的 "JAXBElemet createXyz(Xyz xyz)"这样的方法签名生成了什么xml模式上下文?

转载 作者:太空宇宙 更新时间:2023-11-04 08:41:01 25 4
gpt4 key购买 nike

我注意到定义了 simpleType 或 complexType,并且在模式文件中的多个元素的声明中使用了这些类型,simpleType 或 complexType 生成了一个方法签名作为“JAXBElemet createXyz(Xyz xyz)”。但我不确定这是否是根本原因。

最佳答案

为了将对象编码为 XML,JAXB 需要知道要使用的 XML 元素的名称。它可以从 (a) 类上的 @XmlRootElement 注释获取此信息,或者 (b) 通过将对象包装在包含元素名称的 JAXBElement 中。

如果 XJC 生成没有 @XmlRootElement 的类,则 ObjectFactory 中该类的工厂方法将使用 JAXBElement 包装器,以提供所需的编码信息。

然后您可能会问为什么 XJC 决定为某些类生成 @XmlRootElement 而不是其他类,但之前已经有人问过这个问题,所以去看看那个类。

关于java - xjc的ObjectFactory的 "JAXBElemet<Xyz> createXyz(Xyz xyz)"这样的方法签名生成了什么xml模式上下文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5307123/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com