spring mvc 控制器方法传数组对象的一些经验
来源:互联网 发布:zara淘宝官方旗舰店 编辑:程序博客网 时间:2024/06/08 06:09
因为项目需要在一个表单里面提交多个对象,比较好的做法就是直接在控制器方法参数里传一个数组。
由于Spring mvc框架在反射生成控制方法的参数对象的时候会调用这个类的getDeclaredConstructor方法来获得构造函数, 但是一直报NoSuchMethodException的异常。
根据这个方法的jdk文档,这个类是一个数组对象时,这个方法会抛出java.lang.NoSuchMethodException,因为接口、数组类、void、基本类型没有构造函数。
同事后来给我支了两招,使用ArrayList来代替原生数组,或者使用DTO来封装一下原生的数组,Spring mvc就能够找到这个参数的构造函数了。
@RequestMapping(value={"xxx"}, method = RequestMethod.POST)public String foo(ArrayList<Bar> bars){param.get(0);}class BarArray{Bar[] bars;public Bar[] getBars(){return bars;}public void setBars(Bar[] bars){this.bars = bars;}}@RequestMapping(value={"xxx"}, method = RequestMethod.POST)public String foo(ArrayList<Bar> bars){param.get(0);}前台的话可以通过bars[0].name=xxx 这样的方式来提交表单。
还有一点就是基本类型的数组不需要这样做,因为不需要构造函数。
0 0
- spring mvc 控制器方法传数组对象的一些经验
- Spring MVC 表单与控制器间model对象映射的一些注意事项
- Spring MVC中2种映射控制器的方法
- Spring中控制器方法返回字符串的一些细节
- Spring MVC 实现一个控制器写多个方法
- Spring MVC处理对象数组
- spring mvc 传递数组对象
- spring mvc 接受对象数组
- Spring MVC第二讲:Spring MVC 注解驱动的控制器
- Spring MVC 的三种映射控制器
- 使用Spring MVC 的表单控制器SimpleFormController
- spring mvc 各种控制器的区别关系
- Spring MVC的表单控制器一
- spring mvc中基于注解的控制器
- spring mvc的几种控制器
- Spring MVC是如何找到控制器的
- Spring MVC---基于注解的控制器
- Spring MVC---基于注解的控制器
- C++与Lua通信
- 如同以前我所写的
- 拦截器 过滤器
- 2075 A|B?(A整除B)
- POJ 2488 A Knight's Journey(简单搜索)
- spring mvc 控制器方法传数组对象的一些经验
- sql操作一些命令总结
- poj2253-Frogger (最小生成树)
- 苏菲的杠杆收购
- 一个简单的java回调函数的实现
- Hilbert space
- [Sterling WMS] Sterling Commerce 产品历史版本
- 真心想学好JS、JSP、EXTJS
- C++ 内存泄露