jsp 获取表单值, 提交类型为multipart/form-data处理

//tt.jsp
<
script type="text/javascript"> function doSubmit(){ alert("aaaaaa"); form.action = "tt2.jsp?unionFlag=1"; form.method="post"; //form.unionFlag=0;
form.encoding
="multipart/form-data"; form.submit(); } </script> <form method="post" name="form"> <input type="file" name="file" value="浏览" /> <input type="hidden" id="unionFlag" name="unionFlag" value="0" /> <input type="button" value="上传" onclick="doSubmit()"/> </form>

当表单提交类型为multipart/form-data时候,写在<form>中的参数从后台通过request.getParameter()无法获取,输出为null ~!原因是它是用2进制流传输的,你要按流那出来,解析。
解决方法1:参数可以跟在提交字符串后面,如tt2.jsp?unionFlag=1

//tt2.jsp
String unionFlag = request.getParameter("unionFlag"); out.write("
<p> unionFlag <p>" + unionFlag);

打印结果为1


解决方法2:一般处理文件上传都会使用第三方的jar上传文件类,比如:jsmartcom_zh_CN.jar

/**获取文件流方式*/
com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
/**获取普通参数值方式*/
String unionFlag = mySmartUpload.getRequest().getParameter("unionFlag");

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值