程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> struts2實現簡單文件上傳,struts2文件上傳

struts2實現簡單文件上傳,struts2文件上傳

編輯:JAVA綜合教程

struts2實現簡單文件上傳,struts2文件上傳


struts2 在內部已經幫我們做了很多封裝的工作,我們只需要簡單的寫一些配置即可。

1 表單頁面

    <form action="${pageContext.request.contextPath }/fileupload" method="post" enctype="multipart/form-data">
        <input type="file" name="filesrc" ><br>
        <input type="submit" value="提交">
        
    </form>

注意:要記住input type=file 的 name屬性值,後台會用到

 

2 FileUploadAction 類來處理文件上傳,將上傳來的文件存放到upload 文件夾裡

public class FileUploadAction extends ActionSupport {
    private File   filesrc;
    private String filesrcFileName;
    private String filesrcContentType;
    
    public File getFilesrc() {
        return filesrc;
    }
    public void setFilesrc(File filesrc) {
        this.filesrc = filesrc;
    }
    public String getFilesrcFileName() {
        return filesrcFileName;
    }
    public void setFilesrcFileName(String filesrcFileName) {
        this.filesrcFileName = filesrcFileName;
    }
    public String getFilesrcContentType() {
        return filesrcContentType;
    }
    public void setFilesrcContentType(String filesrcContentType) {
        this.filesrcContentType = filesrcContentType;
    }
    
    public String uploadFile(){
        String path = ServletActionContext.getServletContext().getRealPath("/upload");
        File destFile = new File(path, filesrcFileName);
        try {
            FileUtils.copyFile(filesrc, destFile);
        } catch (IOException e) {
            e.printStackTrace();
            throw new RuntimeException(e);
        }
        
        return SUCCESS;
    }
    
}

注意:所有與上傳文件有關的域變量命名規則開始要使用 form 表單中的name屬性值。比如要有一個文件對象,就是filesrc,如果想知道文件名,就是:filesrcFileName,其中後面的FileName是固定的。至此就可以將文件存放到upload文件夾中。

當然此處沒有設置文件大小、類型等判斷。

 

3 action的配置,和一般的action配置相同。就不寫了。可以參考之前的博文。struts2開發流程及配置,域對象對數據存儲的3種方式

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved