相信初学者都会存在这样的问题,当图片以及各种text一起提交后台,无法直接用
request.getparameter()
;直接获取,因为中间掺杂着文件流,所以只能form表单设置属性为<form action="/ua/t" method="post" enctype="multipart/form-data">
multipart/form-data
则为二进制,下面我将开始讲解如何处理.
一个写好的页面(包含常用的表单项)
- 代码
<form action="/ua/t" method="post" enctype="multipart/form-data">
用户名:<input type="text" name="username" realplace="用户名"><br>
密码:<input type="password" name="userpassword" realplace="密码"><br>
<br>
性别:
<input type="radio" name="sex" value="02"> 男
<input type="radio" name="sex" value="01"> 女
<br>
喜爱: <input type="checkbox" name="pbq" value="乒乓球">乒乓球
<input type="checkbox" name="yx" value="游戏">游戏
<input type="checkbox" name="zq" value="足球">足球
<br><br>
文件上传:<input name="wenjian" type="file"><br><br><br>
<br>地点:
<select>
<option value="beijing">北京</option>
<option value="hhht">呼和浩特</option>
<option value="erlian">二连</option>
</select>
<br><br>
<input type="submit" value="提交按钮" >
</form>
Servlet处理
- 我们先将表单中的二进制打印到txt文件夹中
然后将其进行分割,将name和value分割存储在MAP中,然后返回.
下面是我的项目,Form解析工厂.可以参考一下源码
点击跳转项目源码→我的Github地址