struts2_单个文件上传
针对struts2的文件上传功能坐的实例
?
java:
package hs.struts2.fileupload.action;import java.io.File;import java.io.IOException;import org.apache.commons.io.FileUtils;/** * struts2_单个文件上传 * @author zKF38493 * */public class FileUploadAction {//用于在上传文件名后加一,防止文件被覆盖private static int count=0;//username属性private String username;//File对象private File uploadFile;//用于存放文件文件名private String uploadFileFileName;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public File getUploadFile() {return uploadFile;}public void setUploadFile(File uploadFile) {this.uploadFile = uploadFile;}public String getUploadFileFileName() {return uploadFileFileName;}public void setUploadFileFileName(String uploadFileFileName) {this.uploadFileFileName = uploadFileFileName;}public String execute() throws IOException{//获取从页面上传来的username值System.out.println("username:"+username);//取得上传后文件存放路径String tar="F://test";File tarFile=new File(tar,(username+count+".txt"));count+=1;//拷贝file对象,从而实现上传文件FileUtils.copyFile(uploadFile, tarFile);return "upload"; }}?
?
jsp:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%@ taglib prefix="s" uri="/struts-tags" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>struts2单个文件上传</title> </head> <body> <s:form action="fileupload" method="post" enctype="multipart/form-data" > <s:label value="username:"></s:label> <s:textfield name="username"></s:textfield> <s:file name="uploadFile"></s:file> <s:submit value="上传"></s:submit> </s:form> </body></html>?
?
struts.xml
<!-- struts2单个文件上传 --><action name="fileupload" class="hs.struts2.fileupload.action.FileUploadAction"><result name="upload">/index.jsp</result></action>?