Java spring-jackson映射反序列化

Java spring-jackson映射反序列化,java,spring,jackson,deserialization,Java,Spring,Jackson,Deserialization,我通过Spring控制器传递一个json对象,如下所示: { "dataset":"myDataset", "typeProperties":[ "myProperty" ], "stopWords":{ "de":[ "daß","allem","dem"], "fr":["salut"] } } 对应的java对象是: public class DatasetConfigRequest { String dataset = "";

我通过Spring控制器传递一个json对象,如下所示:

{
  "dataset":"myDataset",
  "typeProperties":[
    "myProperty"
  ],
  "stopWords":{
    "de":[ "daß","allem","dem"],
    "fr":["salut"]
  }
}
对应的java对象是:

public class DatasetConfigRequest {
    String dataset = "";
    List<String> typeProperties;
    HashMap<String,ArrayList<String>> stopWords = new HashMap<String,ArrayList<String>>();

//getter and setters
公共类数据集配置请求{
字符串数据集=”;
列出类型属性;
HashMap stopWords=新HashMap();
//二传手
但当我通过它时,我得到以下错误:

JSON parse error: Cannot deserialize instance of `java.util.HashMap<java.lang.Object,java.lang.Object>` out of START_ARRAY token; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of `java.util.HashMap<java.lang.Object,java.lang.Object>` out of START_ARRAY token
 at [Source: (PushbackInputStream); line: 1, column: 104] (through reference chain: eu.qanswer.core2.server.controller.payload.dataset.DatasetConfigRequest["stopWords"])]
JSON解析错误:无法反序列化'java.util.HashMap'超出起始\u数组标记的实例;嵌套异常为com.fasterxml.jackson.databind.exc.MismatchedInputException:无法反序列化'java.util.HashMap'超出起始\u数组标记的实例
在[Source:(PushbackInputStream);第1行,第104列](通过引用链:eu.qanswer.core2.server.controller.payload.dataset.DatasetConfigRequest[“stopWords”])]
我知道问题是带有ArrayList值的HashMap。但是如何解决这个问题呢

多谢各位
D063520

创建新类并命名stopWords添加id和列表字段,最后向数据集添加字段命名它stopWords

创建一个类来保存@M.ıklabakkal所说的
stopWords
值更为清晰,这样您就可以更好地控制来自客户端的内容。嗨!如果我像您所说的那样创建了一个新类,那么id=“de”和list=[“daß”、“allem”、“dem”]。但是在哪里放置“fr”。你的意思是我应该在DatasetConfigRequest类中放置一个stopWords类的列表吗?你应该在dataset类中将“stopWords”定义为一个数组,然后才能添加多个stopWords对象。