Struts2 文件上傳 – JAVA編程語言程序開發技術文章

單文件上傳

[java]
第一步:在WEB-INF/lib下加入commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar。這兩個文件可以從http://commons.apache.org/下載。  
第二步:把form表的enctype設置為:“multipart/form-data“,如下: 
<form enctype="multipart/form-data" action="${pageContext.request.contextPath}/xxx.action" method="post"> 
  <input  type="file" name="uploadImage"> 
</form> 
第三步:在Action類中添加以下屬性,屬性紅色部分對應於表單中文件字段的名稱: 
public class HelloWorldAction{ 
  private File uploadImage;//得到上傳的文件  
  private String uploadImageContentType;//得到文件的類型  
  private String uploadImageFileName;//得到文件的名稱  
  //這裡略省瞭屬性的getter/setter方法  
  public String upload() throws Exception{ 
    String realpath = ServletActionContext.getServletContext().getRealPath("/images"); 
    File file = new File(realpath); 
    if(!file.exists()) file.mkdirs(); 
    FileUtils.copyFile(uploadImage, new File(file, uploadImageFileName)); 
    return "success"; 
  } 

第一步:在WEB-INF/lib下加入commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar。這兩個文件可以從http://commons.apache.org/下載。
第二步:把form表的enctype設置為:“multipart/form-data“,如下:
<form enctype="multipart/form-data" action="${pageContext.request.contextPath}/xxx.action" method="post">
  <input  type="file" name="uploadImage">
</form>
第三步:在Action類中添加以下屬性,屬性紅色部分對應於表單中文件字段的名稱:
public class HelloWorldAction{
  private File uploadImage;//得到上傳的文件
  private String uploadImageContentType;//得到文件的類型
  private String uploadImageFileName;//得到文件的名稱
  //這裡略省瞭屬性的getter/setter方法
  public String upload() throws Exception{
 String realpath = ServletActionContext.getServletContext().getRealPath("/images");
 File file = new File(realpath);
 if(!file.exists()) file.mkdirs();
 FileUtils.copyFile(uploadImage, new File(file, uploadImageFileName));
 return "success";
  }
}

多文件上傳

[java]
第一步:在WEB-INF/lib下加入commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar。這兩個文件可以從http://commons.apache.org/下載。  
第二步:把form表的enctype設置為:“multipart/form-data“,如下: 
<form enctype="multipart/form-data" action="${pageContext.request.contextPath}/xxx.action" method="post"> 
  <input  type="file" name="uploadImages"> 
  <input  type="file" name="uploadImages"> 
</form> 
第三步:在Action類中添加以下屬性,屬性紅色部分對應於表單中文件字段的名稱: 
public class HelloWorldAction{ 
  private File[] uploadImages;//得到上傳的文件  
  private String[] uploadImagesContentType;//得到文件的類型  
  private String[] uploadImagesFileName;//得到文件的名稱  
  //這裡略省瞭屬性的getter/setter方法  
  public String upload() throws Exception{ 
    String realpath = ServletActionContext.getServletContext().getRealPath("/images"); 
    File file = new File(realpath); 
    if(!file.exists()) file.mkdirs(); 
    for(int i=0 ;i<uploadImages.length; i++){ File uploadImage = uploadImages[i]; 
    FileUtils.copyFile(uploadImage, new File(file, uploadImagesFileName[i])); 

    return "success"; 
  }} 

第一步:在WEB-INF/lib下加入commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar。這兩個文件可以從http://commons.apache.org/下載。
第二步:把form表的enctype設置為:“multipart/form-data“,如下:
<form enctype="multipart/form-data" action="${pageContext.request.contextPath}/xxx.action" method="post">
  <input  type="file" name="uploadImages">
  <input  type="file" name="uploadImages">
</form>
第三步:在Action類中添加以下屬性,屬性紅色部分對應於表單中文件字段的名稱:
public class HelloWorldAction{
  private File[] uploadImages;//得到上傳的文件
  private String[] uploadImagesContentType;//得到文件的類型
  private String[] uploadImagesFileName;//得到文件的名稱
  //這裡略省瞭屬性的getter/setter方法
  public String upload() throws Exception{
 String realpath = ServletActionContext.getServletContext().getRealPath("/images");
 File file = new File(realpath);
 if(!file.exists()) file.mkdirs();
 for(int i=0 ;i<uploadImages.length; i++){ File uploadImage = uploadImages[i];
    FileUtils.copyFile(uploadImage, new File(file, uploadImagesFileName[i]));
}
 return "success";
  }}

 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *