gpt4 book ai didi

用于继承的 Java 到 XML 注释

转载 作者:行者123 更新时间:2023-11-29 07:46:25 24 4
gpt4 key购买 nike

我没有发现任何类似的问题,所以我不知道是否可能。

我有几个继承相同的类。我的主类是 Material,然后是 MaterialTypeA、B、C...所有这些类都有不同的属性。

到目前为止,我的主类是这样的。

@XmlRootElement
@XmlAccessorType(XmlAccessType.NONE)
public abstract class Material {
@XmlElement
private String name;
private String details;
...

其他类是这样的:

@XmlRootElement
@XmlAccessorType(XmlAccessType.NONE)
public class MaterialTypeA extends Material {
@XmlElement
private String propertyA1;
private String propertyB2;
...

@XmlRootElement
@XmlAccessorType(XmlAccessType.NONE)
public class MaterialTypeB extends Material {
@XmlElement
private String propertyB1;
private String propertyB2;
...

我想返回我所有的 Material ,但也想返回每种类型的特定属性。所以我正在做类似的事情:

public List<Material> teste() {
List<Material> materials = business.findAll();
return materials;
}

我的结果是所有 Material ,但只返回名称和 ID。我想要的所有属性都没有返回。如果我针对特定类型的 Material 更改上述方法,它会起作用,但我想要更通用的方法。可能吗?

提前致谢!

最佳答案

您在类上使用了@XmlAccessorType(XmlAccessType.NONE),因此默认情况下您的字段不会被序列化/反序列化。

或者:

  • 您必须使用 @XmlElement 注释所有属性,而不仅仅是 name

  • 或使用 @XmlAccessorType(XmlAccessType.FIELD) 然后您就不必注释字段(但您仍然可以使用 @XmlTransient 注释)。

关于用于继承的 Java 到 XML 注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25244091/

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