jsp的form提交到action
为什么jsp中<form>里面的文本框的值,到Action里面就成String类型的了?Struts2的自动复制,报异常,类型不匹配,因为Action中的类型是int比如...
为什么jsp中<form>里面的文本框的值,到Action里面就成String类型的了?
Struts2的自动复制,报异常,类型不匹配,因为Action中的类型是int
比如页面有个文本框是“年龄”,输入“21”,到Action就成String型的“21”了,没办法赋值给Action的int 属性age。。。。。 展开
Struts2的自动复制,报异常,类型不匹配,因为Action中的类型是int
比如页面有个文本框是“年龄”,输入“21”,到Action就成String型的“21”了,没办法赋值给Action的int 属性age。。。。。 展开
10个回答
展开全部
如果直接进行转换,例如:
int id = Integer.parseInt(request.getParameter("id"));
那么将出现风险。 ID 这个值不一定每次都有,因此需要保护。
String sID = "";
int iId = 0;
sID = request.getParameter("id");
if(!sID.equals("")){
iId = Integer.parseInt(request.getParameter("id"));
}
写页面程序 经常容易出这种错误,而且出现后很不容易Dbug。
小心渡得万年船。
int id = Integer.parseInt(request.getParameter("id"));
那么将出现风险。 ID 这个值不一定每次都有,因此需要保护。
String sID = "";
int iId = 0;
sID = request.getParameter("id");
if(!sID.equals("")){
iId = Integer.parseInt(request.getParameter("id"));
}
写页面程序 经常容易出这种错误,而且出现后很不容易Dbug。
小心渡得万年船。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这样的做法,相当于是jsp和servlet之间数据的交互。而这样获取数据,就是通过request.getParameter()方法获取,这个方法返回的就是字符串。
你可以Integer.parseInt()进行转化为int类型。
另外如果你页面上使用了ActionForm,并且在后台有对应的Form的话,struts是可以自动帮你转化为对应数据类型的。
你可以Integer.parseInt()进行转化为int类型。
另外如果你页面上使用了ActionForm,并且在后台有对应的Form的话,struts是可以自动帮你转化为对应数据类型的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为页面提交后,通过网络传输,变成流的形式传输,接收到的也是,传输过程无法判断是int,一律认为是String 。所以使用时必须要进行类型转换
希望可以帮到你
希望可以帮到你
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
要类型转换
Integer.parseInt(String s );
用这个方法转换成int就可以了
Integer.parseInt(String s );
用这个方法转换成int就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你在页面上输入的,其实都是String类型的,要在后台去自己转换
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询