JACKSON如何不包含字段的包装器?
public class AuthType {
Map<String,String> properties;
public Map<String, String> getProperties() {
return properties;
}
public void setProperties(Map<String, String> properties) {
this.properties = properties;
}
}
返回
{"properties":{"authType":"XYZ"}}
但我希望有
{"authType":"XYZ"}
任何注释?
看起来不支持http://jira.codehaus.org/browse/JACKSON-765任何解决方法吗?
答案 0 :(得分:1)
从Jackson 1.9开始,您可以使用@JsonUnwrapped注释
public class AuthType {
Map<String,String> properties;
@JsonUnwrapped
public Map<String, String> getProperties() {
return properties;
}
public void setProperties(Map<String, String> properties) {
this.properties = properties;
}
}
答案 1 :(得分:0)
如果您的课程实际上非常简单,请使用杰克逊的custom serializers或简单地将其序列化为tree。
答案 2 :(得分:0)
您可以将@JsonAnyGetter
添加到地图中;如果您需要阅读它,请定义匹配@JsonAnySetter
。