让JsonIgnore或JsonIgnoreProperties处理servlet过滤器

时间:2012-11-28 06:33:55

标签: java json jersey jackson

必须将Java对象序列化为jersey应用程序的servlet过滤器中的json字符串。

拥有以下对象,

 @XmlRootElement
 @JsonIgnoreProperties({"bar"})
 public class Foo{
    String a="1";

    String b="2";

    @JsonIgnore
    String bar="3";

    };



      ObjectMapper om = new ObjectMapper();
      om.writeValueAsString(fooObject);

返回,

        {
          a:"1",
          b:"2",
          bar:"3" // Inspite of Jsonignore and jsonignoreproperties bar is returned
          }

我如何克服这个问题?

2 个答案:

答案 0 :(得分:1)

将代码中的导入修复为fastxml,并将以下功能添加到映射器中解决了问题。

      mapper.configure(MapperFeature.USE_ANNOTATIONS, true);

答案 1 :(得分:0)

使用@XmlTransient:

@XmlTransient
String bar="3";