制作@XmlTransient注释只是为了序列化?

时间:2012-06-05 11:48:55

标签: java xml serialization cxf deserialization

我将Spring和Apache CXF用于实现具有第一代码风格的Java Web服务的项目。

我有一个定义的变量:

@XmlTransient
public String word;

因此该变量不会映射到XML的属性。

但是我希望忽略在序列化时映射XML元素而不是反序列化。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

我认为你无法用@XmlTransient实现这一目标。一个选项是使用MOXy编组使用一个模式并使用另一个模式解组。你可以找到一个很好的例子here

一个简单但不太优雅的解决方法是这样的:

@XmlTransient
public String word;

public void setDeserializedWord(String word) {
   this.word = word;
}

@XmlElement(name="word")
public String getDeserializedWord() {
   return null;
}