下面给出了我的代码片段。
ArrayList<String> list1 = new ArrayList();
list.add("test");
Map<String, List> params = new HashMap<String, List>();
params.put("1", list1);
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
HttpEntity<String> entity = new HttpEntity<>(params,headers );
restTemplate.put(uri, entity);
得到的响应为“无法从 START_OBJECT token 中反序列化 java.util.ArrayList 的实例\”。 有人面临这个类似的问题吗?
最佳答案
您可以将Map
转换为Json
字符串,然后传递给实体,
String paramsString = new Gson().toJson(params);
HttpEntity<String> entity = new HttpEntity<>(paramsString,headers);
restTemplate.put(uri, entity);
关于java - 更新包含列表的数据时,restTemplate.put 给出 "Can not deserialize instance of java.util.ArrayList out of START_OBJECT",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61423456/