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

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

  • 相关阅读:
    Bootstrap基础(七):按钮
    Bootstrap基础(六):表单
    Bootstrap基础(五):表格
    Bootstrap基础(四):代码
    Bootstrap基础(三):排版
    Bootstrap基础(二):网格系统
    Bootstrap基础(一):CSS 概览
    本人承接各种.Net网站制作,软件项目等业务。完美帮您定做
    iOS沙盒路径的查看和使用
    asp.net 源码坊4-6源码发布
  • 原文地址:https://www.cnblogs.com/yuezeyuan/p/7561933.html
Copyright © 2011-2022 走看看