gpt4 book ai didi

java - Jaxb marshall 抽象类而不是唯一类

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:14:28 24 4
gpt4 key购买 nike

我有以下关系:

Class A abstract;
Class B concrete extends A;
Class C has a one to one relation with B.

让我们说

A a=new B();

如果我对 A 进行编码,它将通过使用 B 上显示的 xml 数据进行编码

<B>
</B>

但是如果我们说

C c = new C();
c.setA(new B());.

我得到:

<C>
<A>
</A>
</C>

但 A 是抽象的,因此在解码期间将抛出异常。我的问题是如何在 C 的编码期间让 jaxb 编码具体类而不是抽象类,因此 xml 文件的结果将是:

<C>
<B>
</B>
<C>

最佳答案

如果您使用 @XmlElementRef 进行注释,那么它将匹配基于其 @XmlRootElement 注释的值。

@XmlElementRef
private A a;

关于java - Jaxb marshall 抽象类而不是唯一类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22666329/

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