springMVC前台传数组类型,后台用list类型接收实例代码
springMVC后台处理数组对象。
list类型的参数,接收前台的数组值,实验了一下,结果还真可以。
不用绑定到对象里面。
当然我这个是前台传递了个包含的是string的数组到后台,然后,后台用list来接收。
具体如下:
前台代码:
//发送请求到后台,带数组形式的数据。 functiontestList(){ vardata=getTreeViewCheckedData(); $.ajax({ url:APP_NAME+"xxxx/testList", data:{ list:data }, dataType:"json", success:function(data){ } }); } //获得数据---以数组的形式存储 functiongetTreeViewCheckedData(){ varcheckedData=[]; $('#shareSetting').find('ol.bonsaiinput:checkbox:checked').each(function(){ checkedData.push($(this).val()) } ); returncheckedData; }
后台代码:
//方式一,用list接收前台的数组参数。 @RequestMapping(value="/testList") @ResponseBody publicJsonResulttestList(@RequestParam(required=false,value="list[]")Listlist){ LOG.debug("---------------XxxxController:testList---------------"); LOG.debug("---------------list:\t"+list); returnnewJsonResult(true,"ok",null); } //方式二,用数组接收前台的数组参数。然后转化成list,虽然没必要。 @RequestMapping(value="/testList") @ResponseBody publicJsonResulttestList(@RequestParam(required=false,value="list[]")String[]list){ LOG.debug("---------------XxxxController:testList---------------"); LOG.debug("---------------list:\t"+list); List newList=Lists.newArrayList(Arrays.asList(list)); returnnewJsonResult(true,"ok",null); }
注意的地方:
value="list[],这个好像不能省,
另外你要是修改方法上的参数的话,就得重启一下,不然得不到值
这个list要和前台的数据一模一样。
总结
以上就是本文关于springMVC前台传数组类型,后台用list类型接收实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:
SpringMVC拦截器实现监听session是否过期详解
SpringMVC开发restfulAPI之用户查询代码详解
SpringSpringMVC在启动完成后执行方法源码解析
如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!