2

我有一个使用 xstream 映射到 XML 的类。

类有 5 个字段。在这五个字段中,我想要一个不应该映射到 xml 的字段,并且只有四个字段应该映射到 XML。

例如

public class Person {
  private String firstname;
  private String lastname;
  private String phone;
  // ... constructors and methods
}

当这个类被映射时,我想要这样的 XML,即没有电话号码

<person>
  <firstname>Joe</firstname>
  <lastname>Walnes</lastname>
</person>
4

2 回答 2

3
xstream.omitField(Person.class, "phone");

或在注释中

于 2016-12-09T12:27:26.157 回答
0

使用经典的 Java 代码:

XStreamMarshaller marshaller = ... //Get your XStreamMarshaller
marshaller.getXStream().omitField(Person.class, "phone");

带注释:

@XStreamOmitField
private String phone;

对于第二种情况,您必须调用marshaller.getXStream().autodetectAnnotations(true);ormarshaller.getXStream().processAnnotations(Person.class);以确保使用注释。

于 2016-12-09T14:33:26.010 回答