如何向类添加单个 @XmlAttribute 注释,该注释适用于该类中的所有对象

问题描述

我有一个包含许多字段的类,所有字段都将是 Attribute 期间 XML 元素的 JAXB Marshalling。到目前为止,我已经用 @XmlAttribute 对每个字段进行了注释,并且运行良好。

现在我正在重构代码,所以我想知道是否有办法添加单个 @XmlAttribute 以便它可以适用于该类中的所有字段,这样我就不必添加 {{ 1}} 到每个字段。

类似于 @XmlAttribute 中的 @Getter@Setter。它可以添加到每个字段上,也可以添加到类中,以便适用于该类中的所有私有字段。

我尝试添加类,但它向我抛出异常 Project Lombok

我有将近 15-20 个字段,所有这些字段都将是一个属性,因此想寻找一种快捷方法,而不是在每个字段上添加注释。

XmlNamedAttribute cannot be resolved to a type

寻找这样的快捷方式:

@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@XmlAccessorType(XmlAccesstype.NONE)
public class Reports {
    @XmlAttribute
    private String id;

    @XmlAttribute
    private String type;

    @XmlAttribute
    private String name;
    
    //Similarly I have 15-20 fields
}

截至目前,一切正常。只是想确认是否有更好的方法

如果没有可用的直接方法,那么我们可以为其编写自定义 @Data @NoArgsConstructor @AllArgsConstructor @Builder @XmlAccessorType(XmlAccesstype.NONE) @XmlAttribute public class Reports { private String id; private String type; private String name; //Similarly I have 15-20 fields } 吗?如果是这样,有人可以提供基本框架或建议吗?

似乎没有什么对我有用。我什至尝试了使用实现的 JAXB XMLAdapter

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)