前端代码
$.ajax({ url: '/unit/add', type: 'POST', data:{ "unit": [{ id:1234, custAccId:123214, unitName:"mingc", remarks:"asdasd", }, { id:1234, custAccId:1234, unitName:"mingc", remarks:"asdasd", }], }, dataType: 'json', success: function (data) { if(data.status=200){ alert("成功") } } })
后端接收
@RequestMapping("/add") @ResponseBody public ResponseResult add(@RequestParam Map<String,Object> map) { System.out.println(map.toString()); for (Object o : map.keySet()) { System.out.println(map.get(o)); } return new ResponseResult(200,"成功",map); }
ResponseResult 工具代码
package com.zjcloud.product.result; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import java.util.List; public class ResponseResult { // 定义jackson对象 private static final ObjectMapper MAPPER = new ObjectMapper(); // 响应业务状态 private Integer status; // 响应消息 private String msg; // 响应中的数据 private Object data; public static ResponseResult build(Integer status, String msg, Object data) { return new ResponseResult(status, msg, data); } public static ResponseResult ok(Object data) { return new ResponseResult(data); } public static ResponseResult ok() { return new ResponseResult(null); } public ResponseResult() { } public static ResponseResult build(Integer status, String msg) { return new ResponseResult(status, msg, null); } public ResponseResult(Integer status, String msg, Object data) { this.status = status; this.msg = msg; this.data = data; } public ResponseResult(Object data) { this.status = 200; this.msg = "OK"; this.data = data; } public Boolean isOK() { return this.status == 200; } public Integer getStatus() { return status; } public void setStatus(Integer status) { this.status = status; } public String getMsg() { return msg; } public void setMsg(String msg) { this.msg = msg; } public Object getData() { return data; } public void setData(Object data) { this.data = data; } /** * 将json结果集转化为ResponseResult对象 * * @param jsonData json数据 * @param clazz ResponseResult中的object类型 * @return */ public static ResponseResult formatToPojo(String jsonData, Class<?> clazz) { try { if (clazz == null) { return MAPPER.readValue(jsonData, ResponseResult.class); } JsonNode jsonNode = MAPPER.readTree(jsonData); JsonNode data = jsonNode.get("data"); Object obj = null; if (clazz != null) { if (data.isObject()) { obj = MAPPER.readValue(data.traverse(), clazz); } else if (data.isTextual()) { obj = MAPPER.readValue(data.asText(), clazz); } } return build(jsonNode.get("status").intValue(), jsonNode.get("msg").asText(), obj); } catch (Exception e) { return null; } } /** * 没有object对象的转化 * * @param json * @return */ public static ResponseResult format(String json) { try { return MAPPER.readValue(json, ResponseResult.class); } catch (Exception e) { e.printStackTrace(); } return null; } /** * Object是集合转化 * * @param jsonData json数据 * @param clazz 集合中的类型 * @return */ public static ResponseResult formatToList(String jsonData, Class<?> clazz) { try { JsonNode jsonNode = MAPPER.readTree(jsonData); JsonNode data = jsonNode.get("data"); Object obj = null; if (data.isArray() && data.size() > 0) { obj = MAPPER.readValue(data.traverse(), MAPPER.getTypeFactory().constructCollectionType(List.class, clazz)); } return build(jsonNode.get("status").intValue(), jsonNode.get("msg").asText(), obj); } catch (Exception e) { return null; } } }