用泛型的extends影响struts2的数据封装
2015-07-29 17:55
253 查看
我有两个父子关系的类
Mzcz(父类) Mzczmx(子类)
在父类中定义了子类的集合属性
Mzcz中
List<? extends Mzcz> lstMzczmxs = new ArrayList<Mzczmx>();
集合中可以存放Mzcz子类。所以这个集合可以存放Mzczmx.
但是当我从前台传数据的时候出现了问题。
如下:
<input type="text" name="mzcz.lstMzczmx[0].mzczmx_je" id="mzczmx_je"/>
当我在这个标签中输入文本,传到后台的时候出现了集合有空间,但是里面的内容都是null
我想了一下,在封装数据的时候,lstMzczmx集合中存放的类型是不确定的,不一定是mzczmx,
因为我声明的集合变量的泛型就是不确定的,只是一个范围。
把集合改一下就可以了
List<Mzczmx> lstMzczmxs = new ArrayList<Mzczmx>();
就能够穿到后台了。
Mzcz(父类) Mzczmx(子类)
在父类中定义了子类的集合属性
Mzcz中
List<? extends Mzcz> lstMzczmxs = new ArrayList<Mzczmx>();
集合中可以存放Mzcz子类。所以这个集合可以存放Mzczmx.
但是当我从前台传数据的时候出现了问题。
如下:
<input type="text" name="mzcz.lstMzczmx[0].mzczmx_je" id="mzczmx_je"/>
当我在这个标签中输入文本,传到后台的时候出现了集合有空间,但是里面的内容都是null
我想了一下,在封装数据的时候,lstMzczmx集合中存放的类型是不确定的,不一定是mzczmx,
因为我声明的集合变量的泛型就是不确定的,只是一个范围。
把集合改一下就可以了
List<Mzczmx> lstMzczmxs = new ArrayList<Mzczmx>();
就能够穿到后台了。
相关文章推荐
- c#窗体传值用法实例详解
- ASP.NET页面间的传值的几种方法
- 关于C语言中参数的传值问题
- C# Winform窗口之间传值的多种方法浅析
- php下通过POST还是GET来传值
- JS中Iframe之间传值的方法
- asp.net 页面间传值方法小结
- ASP.NET页面传递值的方式介绍
- struts2 jquery 打造无限层次的树
- Servlet与JSP间的两种传值情况
- ajax交互Struts2的action(客户端/服务器端)
- javascript中的变量是传值还是传址的?
- struts2 spring整合fieldError问题
- Struts2的s:radio标签使用及用jquery添加change事件
- Javascript showModalDialog两个窗体之间传值
- Android学习笔记--使用剪切板在Activity中传值示例代码
- 如何传值在2个页面之间 要求不刷新父页面,并且不能用Querystring传值
- JavaScript新窗口与子窗口传值详解
- struts2 中文乱码的解决办法分享
- Struts2访问servlet分享