本人最近一直在研究extjs,感觉其功能强大复杂,前段时间做了个项目,要使用extjs实现文件上传,下面写出研究成果,与各位一起分享。
1.fileUpload.js
Ext.onReady(function(){
var form = new Ext.form.FormPanel({
renderTo:'file',
labelAlign: 'right',
title: '文件上传',
labelWidth: 60,
frame:true,
url: '../upload.do?op=uploadFile',//fileUploadServlet
width: 300,
height:200,
fileUpload: true,
items: [{
xtype: 'textfield',
fieldLabel: '文件名',
name: 'file',
inputType: 'file'//文件类型
}],
buttons: [{
text: '上传',
handler: function() {
form.getForm().submit({
success: function(form, action){
Ext.Msg.alert('信息', '文件上传成功!');
},
failure: function(){
Ext.Msg.alert('错误', '文件上传失败');
}
});
}
}]
});
});
2.uploadAction.java 其中使用了cos上传组件,下载地址:http://www.servlets.com/cos/cos-05Nov2002.zip
Java代码
package zx.struts.actions;
import java.io.File;
import java.util.Enumeration;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.oreilly.servlet.MultipartRequest;
public class UploadAction extends DispatchAction{
public ActionForward uploadFile(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)throws Exception {
String saveDirectory ="F:\\jboss-4.2.2.GA\\server\\default\\deploy\\userDemo.war\\upload"; //文件上传后,保存的位置
int maxPostSize =3 * 5 * 1024 * 1024 ; //每个文件最大5MB,最多3个文件,所以...
//response的编码为"gb2312"
MultipartRequest multi =
new MultipartRequest(request, saveDirectory, maxPostSize,
"gb2312");
//输出反馈信息
Enumeration files = multi.getFileNames();
while (files.hasMoreElements()) {
String name = (String)files.nextElement();
File f = multi.getFile(name);
if(f!=null){
String fileName = multi.getFilesystemName(name);
String lastFileName= saveDirectory+"\\" + fileName;
System.out.println("上传的文件:"+lastFileName);
}
}
return null;
}
}
分享到:
相关推荐
网上有些这样的例子,但是下了几个都没有跑起来,哎,希望那些发文章的人要发就发全的,别发个半生不熟的。... 现在自己整理了一个Struts2+ExtJS2实现文异步文件上传,没法上传图片无法看到效果,直接上源码吧。
研究了半天的ExtJs+Struts2多文件上传.直接导入就可以运行。
extjs+struts+hibernate做的文件批量上传源代码解压后就可以运行,界面很好看。功能很强大。有删除上传资料。保存数据库,带报表展示。。。。。欢迎下载。
struts2+extjs3的单/多文件上传,后台也可以不用struts2,前台也可以去掉extjs,资源包含所需要的所有JAR包,无需另外下载,代码量绝对精简易懂。
extjs3.2+struts2实现多文件上传excel并插入到数据库
文件上传一直是Ext3.0以上版本的难点,本实例利用Ext3.2和struts实现文件和参数的共同上传,并解决了中文乱码的问题。
ExtJs4.2+Mysql+Struts2+Hibernate3实现分页查询 1.libs目录缺少hibernate核心jar包 2.libs目录缺少struts jar 3.WebRoot目录缺少ExtJs4.2核心类库 以上信息我都在项目里面注明了,因为这些内容的文件太大了,CSDN不...
在我的随笔Extjs Tree + JSON + Struts2中我介绍了如何异步加载一个Extjs的树,但是很多网友留言说不能成功操作。现在我自己做了一个所有源代码的包,供大家下载。 有几点事项请大家注意 1、blogjava的文件上载要求...
Extjs4文件上传,后台struts2
ExtJS4+strtus2文件上传实例源码, 具体实现的功能看本人博客http://blog.csdn.net/biboheart/article/details/10380555
功能强大的Struts2.0+Extjs实现的文件上传,包含文件上传进度,文件的下载,压缩,解压多文件删除等
NULL 博文链接:https://332590882-qq-com.iteye.com/blog/1450832
包括文件管理,分享管理,HTML5预览,文件评论,文件上传下载,用户管理。
功能有:会话过滤、MD5加密、文件上传、权限设置、报表统计....... 是一个比较成熟的项目。 运行环境 jdk7+tomcat7+mysql+IntelliJ IDEA 项目技术(必填) spring+struts+hibernate 数据库文件 链接: ...
本示例解决了strut2+swfupload+extjs4文件上传过程中,后台struts接收不到上传文件的问题。而这个问题如果用servlet做后台可能就不存在。开发者可以用本例源码移植到自己项目中使用 。
用EXT+struts2+spring+hibernate做的一个增删改查实例,主要用到了EXTjs里面的部分组件,用JSON与服务端交互,实现一个增删改查的功能!本地MYsql数据库,sql文件在根目录下面,建好库既可以运行!当然,还是需要在...
初学axis2,这是我的第一个项目,比较...由于jar包太大,我没有权限上传,所以只截了张图在项目里。包里有struts2的包,放在里面没关系。里面默认的数据库是oracle,大家可以根据自己的情况换。配置文件里面都配好了。
实现了多文件上传,下载,压缩,解压缩,用struts2.0+Extjs实现,是第二部分,分享一下希望对大家有所帮助
将struts-2.1.6\lib目录下的struts2-codebehind-plugin-2.1.6.jar、struts2-core-2.1.6.jar、struts2-spring-plugin-2.1.6.jar、xwork-2.1.2.jar、ognl-2.6.11.jar、freemarker-2.3.13.jar、commons-fileupload-...