zoukankan      html  css  js  c++  java
  • springmvc接收前台(可以是ajax)传来的数组list,map,set等集合,复杂对象集合等图文详解

    参考帖子:

    http://blog.csdn.net/wabiaozia/article/details/50803581

    方法参考:

    {  
            "token":"",  
            "itemsList":[{  
               "itemId":"",  
               "num":""  
              }...]  
    }  
    方式一:页面不用改动,只要在后台自定义一个实体类TokenItem  
      
    TokenItem{    
     public List<item> itemsList;     
     public String token;    
     。。。}    
    //然后    
    TokenItem data= mapper.readValue(jsonData, TokenItem.class);    
      
      
     方式二:页面要改动,把contentType和data修改下。后台的接收方式改为@RequestParam  
     $.ajax({  
                    type : "POST",  
                    url : "../...",  
                    data : {"token":token,"itemsList":JSON.stringify(itemsList)},  
                    contentType:'application/x-www-form-urlencoded;charset=UTF-8',  
                    dataType : 'json',  
                    success : function(data) {  
                    .......  
                    }  
    });  
      
        //controller接收  
          
        public void aa(@RequestParam Map<String, Object> params){  
            String token=String.valueOf(params.get("token"));  
            String items = String.valueOf(params.get("itemsList"));  
            ObjectMapper mapper = new ObjectMapper();  
            List<item> itemsList = mapper.readValue(items, new TypeReference<List<item>>(){});   
      
        }  
      
        2 如果token是用作登录或权限验证作用,token应该放在header中而不是data里。  
  • 相关阅读:
    #跟着教程学# 6、maya/python window命令
    element 中MessageBox的封装
    vue中XLSX解析excel文件
    git工作区-暂存区
    GIT相关
    弹窗-二维码生成与下载
    输入框限定100个汉字或200字符
    深浅拷贝(详细)
    日期选择器选取时间范围(非空以及初始时间不能在当天以前)
    多选
  • 原文地址:https://www.cnblogs.com/abc8023/p/7766452.html
Copyright © 2011-2022 走看看