xstream:将对象映射到xml,不包括一个字段

时间:2013-07-04 14:54:02

标签: java xml xstream

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

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

E.g

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

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

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

2 个答案:

答案 0 :(得分:1)

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

或注释

答案 1 :(得分:0)

使用经典的Java代码:

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

带注释:

@XStreamOmitField
private String phone;

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