1。webwork2.1.7 2。apache common fileupload1.0 二、编写input.jsp <html> <head><title>File Upload</title> </head> <body> <form action="fileUpload.action" enctype="multipart/form-data" method="POST"> <p> <input type="text" name="fileFileName"/> <input type="file" name="file"/><br> <p> <input type="text" name="hello"/> <input type="file" name="files"/><br> <p> <input type="text" name="hello"/> <input type="file" name="files"/><br> <p> <input type="text" name="hello"/> <input type="file" name="files"/><br> <p> <input type="submit" name="上载"/> </form> </body> </html> 三、编写action import java.io.*; import java.util.*; import com.opensymphony.xwork.*; public class FileUploadAction implements Action { File file; String fileContentType; String fileFileName; File[] files; String[] filesContentType; String[] filesFileName; private boolean debug=true; public String execute() throws Exception { ActionContext context=ActionContext.getContext(); Map map=context.getParameters(); context.getValueStack(); if(filesFileName!=null) { for (int i = 0; i < filesFileName.length; i++) { String srcName = filesFileName[i]; File target = new File(srcName); if (target.exists()) { target.delete(); } files[i].renameTo(target); } } return SUCCESS; } public String doDefault() throws Exception { return INPUT; } public void setFile(File file) { this.file = file; } public void setFileContentType(String fileContentType) { this.fileContentType = fileContentType; } public void setFiles(File[] files) { this.files = files; if(files==null) { return ; } if(debug) { for (int i = 0; i < files.length; i++) { System.out.println(files[i].getName()) ; } } } public void setFilesContentType(String[] filesContentType) { this.filesContentType = filesContentType; } public void setFilesFileName(String[] filesFileName) { this.filesFileName = filesFileName; } public void setFileFileName(String fileFileName) { this.fileFileName = fileFileName; } public void setDebug(boolean debug) { this.debug = debug; } 三、配置xwork.xml <package name="fileUpload" extends="webwork-default" namespace="/fileUpload"> <interceptors> <interceptor name="fileUpload" class="com.opensymphony.webwork.interceptor.FileUploadInterceptor"> <param name="allowedTypes">image/jpeg/jpg/bmp/txt</param> <param name="maximumSize">10000000</param> </interceptor> <interceptor-stack name="fileUploadStack"> <interceptor-ref name="fileUpload"/> <interceptor-ref name="defaultStack"/> </interceptor-stack> </interceptors> <default-interceptor-ref name="fileUploadStack"/> <action name="fileUpload" class="org.bluebird.web.file.action.FileUploadAction"> <result name="success">success.jsp</result> <result name="input">input.jsp</result> </action> </package> 四、修改webwork.properties # various values webwork.multipart.parser=jakarta webwork.multipart.saveDir=/tmp webwork.multipart.maxSize=10000000 五、总结 webwork支持common fileupload, pell,cos三种方式的文件上载,common对多文件上载支持的比较好。 |
使用WebWork common file upload上载文件
最新推荐文章于 2019-06-10 16:34:59 发布