jsp
表单记得用form 标签包起来,写上id,这个就不用代码了
<input type="button" value="提交" onclick="save()" class="comfirmBtn" />
js
function save() { var dataArr = $("#form").serializeArray(); var sendData = {}; $.each(dataArr, function (i, o) { sendData[o.name] = o.value; }); var url = path + '/userAddrApp/userAddr/save'; ajaxRequest(url,'POST',{ "obj":sendData, "userId":userId },function (ret,err) { }) }
java
@RequestMapping(value = "save") @ResponseBody public String save(HttpServletRequest request){ Map<String,Object> map = null; try { map = new HashMap<>(); //接参数 String obj = request.getParameterMap().get("obj")[0]; //转对象 UserAddr userAddr = (UserAddr) JsonUtil.JSONToObj(obj, UserAddr.class); //保存 userAddrService.save(userAddr); map.put("code","1"); } catch (Exception e) { map.put("code","0"); e.printStackTrace(); } return JsonUtil.toJsonString(map); }
JsonUtil
package com.hy.utils; import com.fasterxml.jackson.databind.ObjectMapper; public class JsonUtil { /** * 将json转化为实体POJO * @param jsonStr * @param obj * @return */ public static<T> Object JSONToObj(String jsonStr,Class<T> obj) { T t = null; try { ObjectMapper objectMapper = new ObjectMapper(); t = objectMapper.readValue(jsonStr, obj); } catch (Exception e) { e.printStackTrace(); } return t; } }