upload.jsp
<form action="${pageContext.request.contextPath}/up" method="post" enctype="multipart/form-data">
<input type="file" name="upload"><br>
<input type="file" name="upload"><br>
<input type="submit" value="上传"><br>
</form>
struts,xml
<!-- 可以帮助我们解决post请求乱码问题 -->
<constant name="struts.i18n.encoding" value="UTF-8"></constant>
<!-- 使报错信息更加详细,以及struts.xml配置后不需要重启服务器 -->
<constant name="struts.devMode" value="true"></constant>
<!-- 上传文件大小设置 -->
<constant name="struts.multipart.maxSize" value="20971520"></constant>
<package name="default" namespace="/" extends="struts-default" >
<action name="up" class="cn.upload.UploadAction" method="uploadFile">
<!-- <result name="input">/upload/error.jsp</result> -->
</action>
</package>
uploadAction
public class UploadAction extends ActionSupport{
private File[] upload;//上传的文件
private String[] uploadContentType;//上传的类型
private String[] uploadFileName;//上传文件的名称
public File[] getUpload() {
return upload;
}
public void setUpload(File[] upload) {
this.upload = upload;
}
public String[] getUploadContentType() {
return uploadContentType;
}
public void setUploadContentType(String[] uploadContentType) {
this.uploadContentType = uploadContentType;
}
public String[] getUploadFileName() {
return uploadFileName;
}
public void setUploadFileName(String[] uploadFileName) {
this.uploadFileName = uploadFileName;
}
public void uploadFile(){
//得到upload目录在Tomcat的绝对磁盘路径
String path = ServletActionContext.getServletContext().getRealPath("/upload");
for (int i = 0; i < upload.length; i++) {
//创建服务器端文件
File dest = new File(path,uploadFileName[i]);----------------------------------------
//上传的文件以及要存放的位置
try {
FileUtils.copyFile(upload[i], dest);---------------------------------
} catch (IOException e) {
e.printStackTrace();
}
}