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

Java xstream:将对象映射到xml,不包括一个字段,java,xml,xstream,Java,Xml,Xstream,我有一个使用xstream映射到XML的类 这个类有5个字段。在这五个字段中,我想要一个不应该映射到xml的字段,而只有四个字段应该映射到xml 例如 当这个类被映射时,我想要这样的XML,即没有电话号码 <person> <firstname>Joe</firstname> <lastname>Walnes</lastname> </person> 乔 瓦恩斯 或在注释中 或者在注释中使用经典Java代码:

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

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

例如

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

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

乔
瓦恩斯
或在注释中


或者在注释中使用经典Java代码:

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

@XStreamOmitField
private String phone;

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

对于经典Java代码:

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

@XStreamOmitField
private String phone;

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

问题是什么?问题是什么?这取决于您的版本,因为在1.4.X和之前,我们可以简单地执行XStream XStream=new XStream(new DomDriver);因此,请直接使用xtsream对象,使用XStreamMarchaller有什么好处?谢谢!这取决于您的版本,因为在1.4.X和之前,我们可以简单地执行XStream XStream=newxstream(newdomdriver);因此,请直接使用xtsream对象,使用XStreamMarchaller有什么好处?谢谢!