struts2学习笔记(十一)文件上传

来源:互联网 发布:伪随机数生成算法 编辑:程序博客网 时间:2024/05/29 14:30

1.jsp


<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><%@ taglib prefix="s" uri="/struts-tags" %>  <html>  <head>    <title>My JSP 'HelloWorld.jsp' starting page</title>  </head>  <body><br> <s:form action="upload" method="post" enctype="multipart/form-data">文件:<input type="file" name="test"><br><input type="submit" value="提交"></s:form>  </body></html>

2. Action类

public class FileUploadAction extends ActionSupport{private File test;  //临时文件,使命名要与jsp中file类型的input名称相同private String testFileName; //文件名称private String testContentType; //文件类型public File getTest() {return test;}public void setTest(File test) {this.test = test;}public String getTestFileName() {return testFileName;}public void setTestFileName(String testFileName) {this.testFileName = testFileName;}public String getTestContentType() {return testContentType;}public void setTestContentType(String testContentType) {this.testContentType = testContentType;}@Overridepublic String execute() throws Exception {System.out.println("文件名:"+this.testFileName+",文件类型:"+this.testContentType);File saveFile = new File("E:/"+this.testFileName);FileUtils.copyFile(this.test, saveFile);return SUCCESS;}}

3.struts.xml配置

<package name="manager1" extends="struts-default"><action name="upload" class="com.skymr.struts2.chapter5.action.FileUploadAction"><result name="success">/regSuc.jsp</result></action></package>

4.配置文件类型和大小

<package name="manager1" extends="struts-default"><action name="upload" class="com.skymr.struts2.chapter5.action.FileUploadAction"><result name="success">/regSuc.jsp</result><result name="input">/upload.jsp</result><interceptor-ref name="fileUpload"><param name="allowedTypes">image/png,image/jpeg,image/jpg,image/bmp,image/gif</param><param name="maximumSize">1024</param></interceptor-ref><interceptor-ref name="defaultStack"></interceptor-ref></action></package>


5.上传大文件

<constant name="struts.multipart.maxSize" value="20000000"></constant>


0 0