一、从前端开始
from表单要有enctype="multipart/form-data"
选择上传文件按钮<input type="file" />
添加 上传 文件按钮<input type="button" value="添加" οnclick="addFile()"/>
这里需要js来实现添加功能
js:
<script type="text/javascript">
function addFile(){
//得到div容器
var div1 = document.getElementById("div1");
div1.innerHTML += "<div><input type='file' /><input type='button' value='删除' οnclick='delFile(this)'/><br /></div>";
}
function delFile(input){
input.parentNode.parentNode.removeChild(input.parentNode);
}
</script>
HTML部分
<form enctype="multipart/form-data"
action="${pageContext.request.contextPath }/servlet/upLoadServlet"
method="post">
<input type="text" name="name" /><br />
<div id="div1">
<div>
<input type="file" /><input type="button" value="添加" οnclick="addFile()"/><br />
</div>
</div>
二、servlet
判断表单是否支持上传
boolean isMultipartContent = ServletFileUpload
.isMultipartContent(request);
if (!isMultipartContent) {
throw new RuntimeException("your form is not multipart/form-data");
}
******借助第三方的上传组建实现文件上传
commons-fileupload.jar,核心包;
commons-io.jar,依赖包。