用Jackson序列化Java Map

问题描述

我正在使用Jackson库来序列化JSON,

具有序列化Java Map,例如map<String,String>具有

{<color,green>,<color,blue>}

我希望将此序列化为

"colormap":[{"key": "color":,"value":"green"},{"key": "color:,"value":"blue"}]

,但始终序列化为

"colormap":[{"color":"green"},{"color:"blue"}]

解决方法

您的输出JSON是一个数组,而不是一个地图-如果不查看代码,很难说出底层数据结构是什么,但是要执行您想要的操作,您可能会考虑一个类,例如:

class Thing {
  private String key ;
  private String value ;
  /// add accessors as needed
}

,然后将您的颜色映射声明为List<Thing>。这应该使您的数据符合您的期望。