我想将java对象转换为使用Jackson的Tomcat/jersey中的JSON对象。并且想要动态地抑制某些属性的序列化(写入)。杰克逊 - 动态抑制属性的序列化(写)
我可以使用JsonIgnore,但我想在运行时做出忽略决定。有任何想法吗??
所以下面一个例子,我希望当我序列化用户对象JSON打压“ID”字段..
new ObjectMapper.writeValueAsString(user);
class User {
private String id = null;
private String firstName = null;
private String lastName = null;
//getters
//setters
}//end class
谢谢。在创建JSON数组时,我认为Map模式也有点弱。 Map map1 = new HashMap (); map1.put(“fname”,“Steve”); map1.put(“lname”,“Colly”); \t \t Map map2 = new HashMap (); map2.put(“fname”,“Josh”); map2.put(“lname”,“Roff”); List jsonArray = new ArrayList(); jsonArray.add(map1); jsonArray.add(map2); new ObjectMapper()。writeValueAsString(jsonArray) ...不产生??? {{'fname':'Steve','lname':'Colly'},{'fname':'Josh','lname':'Roff'}] –
kapso
2010-06-05 18:22:47
@ kapil.isr:是的,I刚刚尝试过,它工作正常。键的顺序是不同的,但这是因为你使用了“HashMap”而不是“LinkedHashMap”。 – skaffman 2010-06-05 18:35:30
o是的,它的工作,对不起错字:)感谢很多! – kapso 2010-06-05 18:40:04