排除 JAXB 中的字段
我有2个班级:
@XmlRootElement
public class A {
private Long id;
private B b;
// setters and getters
}
和
@XmlRootElement
public class B {
private Long id;
private String field1;
private String field2;
// setters and getters
}
默认情况下,如果我将类的实例转换为 XML,我将拥有其所有字段 () 和引用的类字段 (, , ),如下所示:A
id
B
id
field1
field2
<a>
<id>2</id>
<b>
<id>5</id>
<field1>test1</field1>
<field2>test3</field2>
</b>
</a>
是否可以修改引用类中的哪些字段包含在类的 XML 中?例如,我想说的是,当我转换类的实例时,我只想从类中获取(no和字段),所以我想得到:B
A
A
id
B
field1
field2
<a>
<id>2</id>
<b>
<id>5</id>
</b>
</a>
我不想永久地注释类(使用或)来实现它,因为在某些情况下,我想按原样导出整个类(使用,和.
我只是不想在从中引用类时导出所有这些字段。B
@XMLTransient
@XMLElement
B
id
field1
field2
B
A
这对于 JAX-B 是否可能实现?