相关疑难解决方法(0)

为什么我无法使用Jackson Java库解包和序列化Java映射?

我的bean看起来像这样:

class MyBean {

    private @JsonUnwrapped HashMap<String, String> map = new HashMap<String, String>();

    private String name;

    public HashMap<String, String> getMap() {
        return map;
    }

    public void setMap(HashMap<String, String> map) {
        this.map = map;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}
Run Code Online (Sandbox Code Playgroud)

当我使用以下代码序列化bean时:

MyBean bean = new MyBean();
HashMap<String, String> map = new HashMap<String, String>();;
map.put("key1", "value1");
map.put("key2", "value2");
bean.setMap(map);
bean.setName("suren");
ObjectMapper mapper = new ObjectMapper();
System.out.println("\n"+mapper.writeValueAsString(bean));
Run Code Online (Sandbox Code Playgroud)

我得到的结果如下:

{"map":{"key2":"value2","key1":"value1"},"name":"suren"}
Run Code Online (Sandbox Code Playgroud)

{"key2":"value2","key1":"value1","name":"suren"} …
Run Code Online (Sandbox Code Playgroud)

java json jackson

41
推荐指数
2
解决办法
1万
查看次数

标签 统计

jackson ×1

java ×1

json ×1