使用uploadify组件在struts2中实现上传

js脚本:

$("#files").uploadify({
		'uploader' : '../js/lib/uploadify/uploadify.swf',//是组件自带的flash,用于打开选取本地文件的按钮  
		'script' : appPath + 'file!uploadFiles.action',//处理上传的路径,这里使用Struts2是XXX.action  
		'cancelImg' : '../js/lib/uploadify/cancel.png',//取消上传文件的按钮图片,就是个叉叉  
		'folder' : 'upload',//上传文件的目录,可以不配置 
		
		 'buttonImg'      : '../js/lib/uploadify/upload.png',//浏览按钮的图片的路径 。
		 'wmode'          : 'transparent' ,//设置该项为transparent 可以使浏览按钮的flash背景文件透明,并且flash文件会被置为页面的最高层。
		 'height'         : 80,  //设置浏览按钮的高度
		 'width'          : 80,  //设置浏览按钮的宽度
		 
		'sizeLimit' : 2*1024*1024,//单个文件的大小,2M  
		'fileDataName' : 'files',//和input的name属性值保持一致就好,Struts2就能处理了  
		'auto' : false,//是否选取文件后自动上传  
		'multi' : false,//是否支持多文件上传  
		'simUploadLimit' : 5,//每次最大上传文件数,不设置的话默认为999个  
		'buttonText' : 'upload',//按钮上的文字  
		'displayData' : 'percentage',//有speed和percentage两种,一个显示速度,一个显示完成百分比  
		'fileDesc' : '支持格式:xls。', //如果配置了以下的'fileExt'属性,那么这个属性是必须的  
		'fileExt' : '*.xls',//允许的格式  
		'onComplete' : function (event, queueID, fileObj, response, data){
			$("#con").unmask();
			$("#batchInfo").html(response);
		}
    });  


上传按钮:

//上传
	$("#batchFormUpload").click(function() {
		$("#con").mask("上传受理中,较耗时,请稍候...");
		jQuery('#files').uploadifyUpload();
	});


html页面:

<link rel="stylesheet" type="text/css" href="../js/lib/uploadify/uploadify.css" />


基于jquery框架,所以需要引入jquery脚本。

<script type="text/javascript" src="../js/lib/jquery/jquery-1.7.2.min.js"></script>

<script type="text/javascript" src="../js/lib/uploadify/jquery.uploadify.v2.1.4.min.js"></script>
<script type="text/javascript" src="../js/lib/uploadify/swfobject.js"></script> 


 <form id="batchForm" enctype="multipart/form-data" name="batchForm" method="post"> 
   <table> 
    <tbody>
     <tr> 
      <td><input type="file" value="浏览" name="files" id="files" /></td> 
      <td>   <a href="template.xls">CSV模板下载</a><a id="help" title="上传的CSV文件最大支持2M" href="#"><img src="../js/lib/poshytip/help.png" height="20" width="20" /></a></td> 
     </tr> 
     <tr> 
      <td><span> </span></td> 
     </tr> 
     <tr> 
      <td align="center" colspan="4"><input id="batchFormUpload" type="button" class="inp05 entry" value="上传并受理" /></td> 
     </tr> 
     <tr> 
      <td align="center" colspan="4"><span id="batchInfo"> </span></td> 
     </tr> 
    </tbody>
   </table> 
  </form>

action类:

public class FileAction extends BaseAction {

        private List<File> files;
	private List<String> filesFileName;
        public List<String> getFilesFileName() {
		return filesFileName;
	}

	public void setFilesFileName(List<String> filesFileName) {
		this.filesFileName = filesFileName;
	}

	public List<File> getFiles() {
		return files;
	}

	public void setFiles(List<File> files) {
		this.files = files;
	}
        public String uploadFiles() throws Exception {
		// 获取当前的路径
		String path = request.getServletContext().getRealPath("");
		// 设置上传之后的文件夹,这个文件夹的命名是自定义的
		path = path + "/upload/";
		// 设置编码方法
		response.setCharacterEncoding("utf-8");

		// 读取文件操作
		
		
		// 页面上提醒
		response.getWriter().print(sb);
		return null;
	}

struts.xml配置:

<package name="file" extends="struts-default">  
		<action name="upload" class="file.FileAction" method="uploadFiles"></action>  
</package>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值