form 表单序列化提交 Java后台转对象保存


 

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;
    }
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM