如何使用JAXB将POJO转换为JSON

时间:2014-06-26 13:32:06

标签: java json jaxb annotations jackson

我试图使用JAXB注释将POJO转换为JSON,并以杰克逊的默认ObjectMapper无法工作的方式返回,即重命名字段并将其标记为未序列化。虽然我无法在不创建servlet的情况下找到有关如何使用它的任何文档。

如何将带有JSON的字符串转换为(带注释的)POJO并返回?

2 个答案:

答案 0 :(得分:0)

你在找@JsonIgnore吗? 此注释将标记一个特定字段,因此Jackson在将POJO转换为JSON时将忽略它。

public class Foo(){
@JsonIgnore
String dontSerializeThis;
@JsonProperty
String serializeThis;
}

答案 1 :(得分:0)

如果您希望坚持使用JAXB注释,杰克逊支持@XmlTransient。杰克逊将其等同于其原生的@JsonIgnore注释。

来自:http://wiki.fasterxml.com/JacksonJAXBAnnotations

  

@ javax.xml.bind.annotation.XmlTransient

Used to mark a class, field, or property as _transient_ (i.e. will not be serialized); that is, same as what @JsonIgnore would indicate

要在Jackson中启用JAXB注释的处理,请参阅上面链接中的注册JAXB注释内省运算符部分。