uploadifive struts2实现图片上传

uploadify是来自国外的一款优秀的jQuery上传插件,主要功能是批量上传文件,带进度显示。下面以HTML5 Version版本为例介绍uploadifive的使用,结合Struts2各软件版本如下:jQuery :1.8.0Struts2 : 2.3.16.3UploadiFive : 1.2.2由于HTML5 Version是收费的,但可移步到download进行下载一、添加对js和css文件的引用[html] view plaincopy在CODE上查看代码片派生到我的代码片 二、JSP页面代码[html] view plaincopy在CODE上查看代码片派生到我的代码片
三、struts.xml[html] view plaincopy在CODE上查看代码片派生到我的代码片 text/html 四、处理上传文件Action[java] view plaincopy在CODE上查看代码片派生到我的代码片import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import org.apache.struts2.ServletActionContext; public class FileAction { private File file; // 文件 private String fileFileName; // 文件名 private String filePath; // 文件路径 private InputStream inputStream; /** * 文件上传 * * @return */ public String fileUpload() { String path = ServletActionContext.getServletContext().getRealPath("/upload"); File ff = new File(path); // 判断文件夹是否存在,如果不存在则创建文件夹 if (!ff.exists()) { ff.mkdir(); } try { if (this.file != null) { File f = this.getFile(); String fileName = java.util.UUID.randomUUID().toString(); // 采用时间+UUID的方式随即命名 String name = fileName + fileFileName.substring(fileFileName.lastIndexOf(".")); // 保存在硬盘中的文件名 FileInputStream inputStream = new FileInputStream(f); FileOutputStream outputStream = new FileOutputStream(path + "\\" + name); byte[] buf = new byte[1024]; int length = 0; while ((length = inputStream.read(buf)) != -1) { outputStream.write(buf, 0, length); } inputStream.close(); outputStream.flush(); // 文件保存的完整路径 // 比如:D:\tomcat6\webapps\eserver\\upload\a0be14a1-f99e-4239-b54c-b37c3083134a.png filePath = path + "\\" + name; } } catch (Exception e) { e.printStackTrace(); } return "success"; } public File getFile() { return file; } public void setFile(File file) { this.file = file; } public String getFileFileName() { return fileFileName; } public void setFileFileName(String fileFileName) { this.fileFileName = fileFileName; } public String getFilePath() { return filePath; } public void setFilePath(String filePath) { this.filePath = filePath; } public InputStream getInputStream() { return inputStream; } public void setInputStream(InputStream inputStream) { this.inputStream = inputStream; } } 项目基本结构如下图:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值