爱问知识人 爱问教育 医院库

如何在Struts2中实现文件上?

首页

如何在Struts2中实现文件上?

如何在Struts2中实现文件上传

提交回答

全部答案

    2017-07-26 21:05:25
  •     前段时间Apache发布了Struts 2。0。6 GA,所以本文的实现是以该版本的Struts作为框架的。以下是例子所依赖类包的列表: 清单1 依赖类包的列表 首先,创建文件上传页面FileUpload。jsp,内容如下:     Struts 2 File Upload                                        清单2 FileUpload。
      jsp 在FileUpload。jsp中,先将表单的提交方式设为POST,然后将enctype设为multipart/form-data,这并没有什么特别之处。接下来,标志将文件上传控件绑定到Action的myFile属性。其次是FileUploadAction。
      java代码: package tutorial; import java。io。BufferedInputStream; import java。io。BufferedOutputStream; import java。io。File; import java。
      io。FileInputStream; import java。io。FileOutputStream; import java。io。InputStream; import java。io。OutputStream; import java。
      util。Date; import org。apache。struts2。ServletActionContext; import com。opensymphony。xwork2。ActionSupport; public class FileUploadAction extends ActionSupport { private static final long serialVersionUID = 572146812454l ; private static final int BUFFER_SIZE = 16 * 1024 ; private File myFile; private String contentType; private String fileName; private String imageFileName; private String caption; public void setMyFileContentType(String contentType) { this 。
      contentType = contentType; } public void setMyFileFileName(String fileName) { this 。fileName = fileName; } public void setMyFile(File myFile) { this 。
      myFile = myFile; } public String getImageFileName() { return imageFileName; } public String getCaption() { return caption; } public void setCaption(String caption) { this 。
      caption = caption; } private static void copy(File src, File dst) { try { InputStream in = null ; OutputStream out = null ; try { in = new BufferedInputStream( new FileInputStream(src), BUFFER_SIZE); out = new BufferedOutputStream( new FileOutputStream(dst), BUFFER_SIZE); byte [] buffer = new byte [BUFFER_SIZE]; while (in。
      read(buffer) > 0 ) { out。write(buffer); } } finally { if ( null != in) { in。
      close(); } if ( null != out) { out。close(); } } } catch (Exception e) { e。
      printStackTrace(); } } private static String getExtention(String fileName) { int pos = fileName。
      lastIndexOf( " 。 " ); return fileName。substring(pos); } @Override public String execute() { imageFileName = new Date()。
      getTime() + getExtention(fileName); File imageFile = new File(ServletActionContext。getServletContext()。
      getRealPath( " /UploadImages " ) + " / " + imageFileName); copy(myFile, imageFile); return SUCCESS; } } 完成 丢弃。

    h***

    2017-07-26 21:05:25

类似问题

换一换

相关推荐

正在加载...
最新问答 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):