enctype="multipart/Form-data"取不到值

最近做了个简单的后台,a.jsp 用post方式提交到b.jsp ,取值一直是null,表单内容提交不过去,很是诡异,后来在网上查 原来在jsp上的form中有加入enctype="multipart/Form-data"而导致取不到值。

这里稍微深入下,编码方式ENCTYPE是为了设置页面提交的编码方式,主要包括3中种。
 
编码方式 具体含义
text/plain 以纯文本的方式进行发送
application/x-www-Form-urlencode 采用默认的编码形式
multipart/Form-data 使用MINE编码方式进行发送
 
如果在表单内有文件需上传,必须使用multipart/Form-data的方式。但用request.getParameter("XXX")取出来的值会是null。enctype="multipart/form-data"是上传二进制数据;form里面的input的值以2进制的方式传过去。
form里面的input的值以2进制的方式传过去,所以request就得不到值了。 也就是说加了这段代码,用request就会传递不成功。
取表单值加入数据库时,可用到下面的方法:
SmartUpload su = new SmartUpload();//新建一个SmartUpload对象
su.getRequest().getParameterValues();取数组值 
su.getRequest().getParameter( );取单个参数单个值
 
也可用下面的方法:
o'reilly组件  MultipartRequest 对象. getParameter("");来获得。


原文出处:http://blog.csdn.net/tftutu/article/details/6456043

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值