SWFUpload实现多文件上传DEMO

         引言:最近项目中需要用到多文件上传,在网上找了很多资料,最开始使用的是uploadify这个插件,在使用的过程中各种问题,什么Flash版本的问题,浏览器兼容性的问题总之是一大堆,最后在众多问题下,无奈只好放弃了。最后选择了SWFUpload,在网上下载了个DEMO,servlet的,感觉挺好用的,基本的功能也都能实现,但是不知道怎么整合到我自己的项目中就不行了,我本想将调用后台的方法改成我自己的action里面对应的方法,上传的时候总是提示IOError的错误,根本进不到我的方法里面去,后来在网上找了下资料,说是struts2在对路径进行拦截的时候没法获得SWFUpload给的路径,貌似解决办法还需修改Struts2源码,一下我就奔溃了,碍于项目时间的限制,被迫再次放弃。对于我自己来说一个东西搞了这么久到最后却还没有做出来,心里实在是堵得慌,但手上又有别的任务,只好暂时放下了。所以我今天将这个DEMO放到这上面来,等有时间了,我一定去解决这个问题,同时也希望大家能给出宝贵的意见。

简单介绍下SWFUpload:
SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而超越传统标签的文件上传模式。所以要使用这个插件,就必须安装Flash。

 先来看看这个DEMO的结构图:

SWFUpload实现多文件上传DEMO_第1张图片

从图中可以看出,代码很简单,就是调用了swfupload这个插件,

在来看看index.jsp里面的内容:

<%@ page language="java" pageEncoding="UTF-8"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort() + path + "/";
	StringBuffer uploadUrl = new StringBuffer("http://");
	uploadUrl.append(request.getHeader("Host"));
	uploadUrl.append(request.getContextPath());
	uploadUrl.append("/FileUploadServlet.htm1");
	System.out.println("uploadUrl====>"+uploadUrl);
%>


	
		
		SWFUpload Demos
		
		
		
		
		
		
	
	
		

效果图如下:

SWFUpload实现多文件上传DEMO_第2张图片

由于篇幅的关系,后台代码就不展示了,最后我会提供下载地址。

最后让大家看看上传的效果图:

SWFUpload实现多文件上传DEMO_第3张图片

后台输出结果:

uploadUrl====>http://localhost:8088/SwfUpload/FileUploadServlet.htm1
name====>zwm
个人感觉这个插件还是很好用的,效果也很好,如果各位能帮忙解决我引言中的问题话,还望给小弟留个言,感激不尽!!!

DEMO下载地址:http://download.csdn.net/detail/javaweiming/6859185





你可能感兴趣的:(java)