📁 文件上传
1. 单文件上传
public class UploadAction extends ActionSupport {
private File upload;
private String uploadFileName;
private String uploadContentType;
@Override
public String execute() throws Exception {
String path = ServletActionContext.getServletContext()
.getRealPath("/upload");
new File(path, uploadFileName).createNewFile();
FileUtils.copyFile(upload, new File(path, uploadFileName));
return SUCCESS;
}
public File getUpload() { return upload; }
public void setUpload(File upload) { this.upload = upload; }
public String getUploadFileName() { return uploadFileName; }
public void setUploadFileName(String uploadFileName) { this.uploadFileName = uploadFileName; }
public String getUploadContentType() { return uploadContentType; }
public void setUploadContentType(String uploadContentType) { this.uploadContentType = uploadContentType; }
}
2. JSP 表单
<s:form action="upload" method="post" enctype="multipart/form-data">
<s:file name="upload" label="选择文件"/>
<s:submit value="上传"/>
</s:form>
3. 多文件上传
private List<File> uploads;
private List<String> uploadsFileName;
<s:file name="uploads" multiple="multiple"/>
4. 限制文件大小和类型
<action name="upload" class="com.demo.UploadAction">
<interceptor-ref name="fileUpload">
<param name="maximumSize">10485760</param>
<param name="allowedTypes">image/png,image/jpeg</param>
</interceptor-ref>
<result>/upload/success.jsp</result>
</action>
下一节:AJAX →