1、jsp页面:
<html:form action="/upload.do" method="post" enctype="multipart/form-data">
标题:<html:text property="title" value=""></html:text><br>
文件:<html:file property="file" value="" onchange="return checkName(this);"></html:file><br>
<html:button property="btn1" value="提交" onclick="return validate();" />
</html:form>
2、ActionForm
package com.solid.upload;
import org.apache.struts.action.ActionForm;
import org.apache.struts.upload.FormFile;
public class UploadForm extends ActionForm {
//文件标题
private String title;
//上传文件
private FormFile file;
public FormFile getFile() {
return file;
}
public void setFile(FormFile file) {
this.file = file;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
}
3、Action
package com.solid.upload;
import java.io.FileOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import org.apache.struts.upload.FormFile;
public class UploadAction extends DispatchAction {
public ActionForward upload(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
UploadForm uploadForm = (UploadForm)form;
//标题
String title = uploadForm.getTitle();
//文件
FormFile file = uploadForm.getFile();
try {
if(file != null) {
System.out.println("fileName=" + file.getFileName() + " fileSize=" + file.getFileSize());
String path = "D:" + java.io.File.separator + file.getFileName();
FileOutputStream fos = new FileOutputStream(path);
fos.write(file.getFileData());
fos.flush();
fos.close();
}
} catch (Exception e) {
e.printStackTrace();
}
return mapping.findForward("success");
}
}