日期:2014-05-18  浏览次数:20704 次

jsp怎么传整型数组给后台?
请教一个问题:
我用的是ssh框架,jsp页面想传递一个整型数组给后台,思路如下:
jsp页面
<s:textfield name="choose" value="20,21" />
action
有choose的set、get方法,然后,我想读出数组长度
System.out.print(choose.length);

结果是这样的:
当我把choose定义成String[]类型时候,程序完全可以正常运行;
当我把choose定义成int[]类型是,程序就提示404错误,找不到action,这是为什么呢?
难道系统默认就是字符类型吗?遇到这种情况怎么解决?
另外,如果定义成int[]类型,value=“20” 也就是数组只取一个值时,程序也可以运行。谁能帮我解惑额?

------解决方案--------------------
JSP页面传值默认都是string,使用一个值的时候能隐式转换成int,但是“20,21”中间有符号,是不能转换成功的。
要取得这样的int数组,就先用个string接收,然后用string的spilt方法分割成你想要存的类型。例如,你可以在choose的set方法里修改
public int[] setChoose(String choose){
     int[] num = choose.split(",");
     return num;
}