struts2中使用属性驱动的形式上传文件

来源:互联网 发布:apache 插件开发 编辑:程序博客网 时间:2024/06/05 16:40

username:<s:textfield name="fileUploadTools.username"></s:textfield>

<br>

<s:file name="fileUploadTools.uploadFile"></s:file>

<br>

<s:file name="fileUploadTools.uploadFile"></s:file>

<br>

<s:file name="fileUploadTools.uploadFile"></s:file>

<br>


控制层Register.java


public class Register extends ActionSupport{

    private FileUploadTools fileUploadTools = new FileUploadTools();

   setter....

   getter.....


   public String execute() throws IOException{

      fileUploadTools.beginUpload();

     return "register";


    }


}



public FileUploadTools{

     private String username;

     private File uploadFile[];//上传的文件是数组类型

     private String uploadFileFileName[];//文件名是数组类型

     private String uploadFileContentType[];

     setter.....

    getter.......

   

    public String beginUpload() throws IOException{

         String targetDirectory = ServletActionContext.getRequest().getRealPath("/uplaod");

         for(int i=0;i<uploadFile.length;i++){

           File target = new File(targetDirectory,new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss").format(new Date()).toString()+System.nanoTime+uploadFileFileName[i]);

           FileUtils.copyFile(uploadFile[i],target);

       }

           return "register";

  }

}



其中的主要变化为name的属性值加入fileUploadTools,该值与action的属性名称要一一对应,而且必须一致。

private FileUploadTools fileUploadTools = new FileUploadTools();

0 0