要浏览并选择要上传的文件,你需要·在表单中有一个HTML 字段。如HTML规范中所述,你必须使用POST
方法,并且enctype
表单的属性必须设置为"multipart/form-data"
。
<form action="upload" method="post" enctype="multipart/form-data">
<input type="text" name="description" />
<input type="file" name="file" />
<input type="submit" />
</form>
提交此类表单后,二进制多部分表单数据在请求正文中的使用方式与enctype未设置时的格式不同。
在Servlet 3.0之前,Servlet API本身不支持multipart/form-data
。它仅支持默认格式enctype application/x-www-form-urlencoded
。使用多部分表单数据时,request.getParameter()
and和con都会全部返回null
。这就是众所周知的Apache Commons FileUpload出现的地方。