spring mvc传数组参数
2016-04-20 00:00
363 查看
摘要: spring mvc 传参 数组
今天传数组参数,竟然不会用,记下来,加深印象。
1、页面ajax默认传参
controller层
2、ajax传数组参数,默认在参数名后面加[],这一点和表单传参不一样,如果想和表单传参一样,可以如下
这时controller层的参数名字没有后面的[]括号了。
3、表单传数组参数,参数名字可以很灵活,后面可加[],可不加,controller层的参数名字要对应起来
controller层的参数名字和form表单中的名字一致
今天传数组参数,竟然不会用,记下来,加深印象。
1、页面ajax默认传参
function arrayParam(){ var contextPath = $('#contextPath').val(); var params = {}; params["names"] = ["张三", "李四", "王武"]; params["ages"] = [20, 26, 48]; var url = contextPath + "/array/getParamArray.do"; $.post(url, params, function(data){ alert(data); }); }
controller层
@RequestMapping(value="/getParamArray") public String getParamArray(@RequestParam("names[]") String[] names, @RequestParam("ages[]") int[] ages){ LOG.info("getParamArray names={}, ages={}", Arrays.toString(names), Arrays.toString(ages)); return "viewName"; }
2、ajax传数组参数,默认在参数名后面加[],这一点和表单传参不一样,如果想和表单传参一样,可以如下
function arrayParam2(){ var url = contextPath + "/array/getParamArray.do"; var params = {}; params["names"] = ["张三", "李四", "王武"]; params["ages"] = [20, 26, 48]; $.ajax({ url: url, type: 'post', traditional: true, // 和表单传数组参数一样。 data:params, success:function(data){ alert(data); } }); }
这时controller层的参数名字没有后面的[]括号了。
@RequestMapping(value="/getParamArray2") public String getParamArray2(@RequestParam("names") String[] names, @RequestParam("ages") int[] ages){ LOG.info("getParamArray names={}, ages={}", Arrays.toString(names), Arrays.toString(ages)); return "viewName"; }
3、表单传数组参数,参数名字可以很灵活,后面可加[],可不加,controller层的参数名字要对应起来
<form action="<%=contextPath %>/array/getParamArray2.do" method="post"> <table> <tr> <td>名字1</td><td><input name="names[]" value="张三" /></td> </tr> <tr> <td>名字2</td><td><input name="names[]" value="李四" /></td> </tr> <tr> <td>年龄1</td><td><input name="ages" value="30" /></td> </tr> <tr> <td>年龄2</td><td><input name="ages" value="25" /></td> </tr> <tr> <td><input type="reset" value="重置" /></td> <td><input type="submit" value="提交" /></td> </tr> </table> </form>
controller层的参数名字和form表单中的名字一致
@RequestMapping(value="/getParamArray3") public String getParamArray3(@RequestParam("names[]") String[] names, @RequestParam("ages") int[] ages){ LOG.info("getParamArray names={}, ages={}", Arrays.toString(names), Arrays.toString(ages)); return "viewName"; }
相关文章推荐
- [Java] 实验8
- eclipse无线连接手机
- (Java实现) HDOJ 1051 Wooden Sticks 贪心算法
- RxJava学习基础与创建操作符
- JDK配置环境变量详解
- 深入探索 Java 热部署
- web开发使用Javabean
- java 单例
- Java进阶学习第八天——WEB入门
- 关于Spring事务<tx:annotation-driven/>的理解(Controller可以使用@Transactional)
- 【GOF23设计模式】_单例模式JAVA226-228
- 从Java视角理解系统结构(一)CPU上下文切换
- JAVA对象的序列化和反序列化
- SpringMVC初体验
- java多线程开发 如何正确关闭线程
- 融云最简洁的实例(eclipse环境下,附源码下载)
- Java基础语法知识之数据类型
- Java ArrayList、Vector和LinkedList等的差别与用法(转)
- Common CLI
- Java创建线程的三种方式