这是我要尝试的包装类
public class Wrapper {
@JsonSerialize(contentUsing = ItemRowSerializer.class)
private Map<String, ItemRow> foo;
public Wrapper(Map<String, ItemRow> fooz) {
foo = new HashMap<>(fooz);
}
public Map<String, ItemRow> getFoo() {
return foo;
}
public void setFoo(Map<String, ItemRow> foo) {
this.foo = foo;
}
}
这是我的测试方式
Wrapper w = new Wrapper(map);
final String jsonResult = mapper.writeValueAsString(w);
System.out.println(jsonResult);
我看到应用了序列化程序,但是我有foo
作为根节点,这不是我想要的。
所以我将注释从字段移到了吸气剂
@JsonSerialize(contentUsing = ItemRowSerializer.class)
public Map<String, ItemRow> getFoo(){
return foo;
}
现在我在写映射器时叫吸气剂
Wrapper w = new Wrapper(map);
final String jsonResult = mapper.writeValueAsString(w.getFoo());
System.out.println(jsonResult);
我再也看不到foo
元素,但是也没有应用序列化器。