zoukankan      html  css  js  c++  java
  • srpingmvc用jackson读取前台json字符串,转为Map,List。。

    方法1:

    前端: 
    function ajaxtest(){
    var rowData=$("#grid").jqGrid("getRowData");
    for(var i=0;i<rowData.length;i++){
    delete rowData[i].operate;
    }
    var postData={
    customer:"customer",
    data:JSON.stringify(rowData)
    };
    Public.ajaxPost("ajaxtest.do 

    ",postData,function(data){
    alert(data);
    });
    }
    后台:
    @ResponseBody
    @RequestMapping(value="ajaxtest.do 

    ")
    public String ajaxTest(String customer,String data) throws JsonMappingException, IOException{
    System.out.println(customer);
    String listStr=java.net 

    .URLDecoder.decode(data, "UTF-8");
    ObjectMapper mapper = new ObjectMapper(); 
    JavaType javaType = mapper.getTypeFactory().constructCollectionType(ArrayList.class, Gy_Settlement.class);  
    List<Gy_Settlement> list=(List<Gy_Settlement>)mapper.readValue(listStr, javaType);
    for(Gy_Settlement s:list) {
    System.out.println(s.toString());
    }
    return null;
    }
    方法2:
    前端:

    function ajaxtest(){
    var rowData=$("#grid").jqGrid("getRowData");
    for(var i=0;i<rowData.length;i++){
    delete rowData[i].operate;
    }
    var data={
    customer:"customer",
    items:rowData
    }
    var postData={
    data:JSON.stringify(data)
    };
    Public.ajaxPost("ajaxtest.do",postData,function(data){
    alert(data);
    });
    }

    后台:

    @ResponseBody
    @RequestMapping(value="ajaxtest.do")
    public String ajaxTest(String data) throws JsonMappingException, IOException{
    ObjectMapper om=new ObjectMapper();
    Map<String,Object> map=om.readValue(data, Map.class);
    System.out.println(map.get("customer"));
    System.out.println("items"+map.get("items"));
    JavaType javaType = om.getTypeFactory().constructCollectionType(ArrayList.class, Gy_Settlement.class);
    List<Gy_Settlement> list=(List<Gy_Settlement>)om.readValue(om.writeValueAsBytes(map.get("items")), javaType);
    for(int i=0;i<list.size();i++) {
    System.out.println(list.get(i).toString());
    }
    for(Gy_Settlement s:list) {
    System.out.println(s.toString());
    }
    System.out.println(list.size());
    return null;
    }

    。。目前太菜了,能用就行了,有更好的方法请指教分享。。

  • 相关阅读:
    【网络安全】telnet 登陆远程服务器
    【网络安全】window 快速搭建 ftp 及 多种访问方式
    科普:PCI-E插槽都有哪些样子?
    Memory及其controller芯片整体测试方案(下篇)
    Memory及其controller芯片整体测试方案(上篇)
    超通俗易懂科普:什么是光通信?
    PCB各层介绍及AD软件画PCB时的规则
    第一次接触FPGA至今,总结的宝贵经验
    嵌入式码农的10年Bug调试经验,值得一看
    做嵌入式驱动的,你一定要挺住!
  • 原文地址:https://www.cnblogs.com/yuezeyuan/p/7561933.html
Copyright © 2011-2022 走看看