`
dada_fangfang
  • 浏览: 146239 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

ajax文件上传三种方式(支持批量)--struts2,jspServlet,springMVC

阅读更多
写了3个不同方式的文件上传,但是前台用的都是ajax的方式,采用的是jq的uploadify插件,关于这个插件的一些属性就不在这说了,可以去网上查询。附件里是struts2和jspServlet的2个demo工程,springMVC的demo不小心被我删了,所以这里只说下思路,使用非常方便。

springMVC方式上传:
页面和其他两种方式一样,不需要改动,主要是后台action,增加参数MultipartFile uploadify(spring会自动帮我们封装);
例如:action处理中的上传处理方法为
    @RequestMapping(method = RequestMethod.POST, params = "action=upload")
    public String doPost(ModelMap model, MultipartFile uploadify,BindingResult result) {
      //上传文件名,要考虑编码问题,ajax默认上传UTF-8
      String fileName = file.getOriginalFilename();
      //有了文件流和文件名,接下来怎么做就不多说了
       //。。。
}
这里有必要提一下的是,传参的问题,如果是动态传参,简单的说就是页面你填写的信息,要和文件一起上传,就是动态传参:
例如:
一般上传的onclick方法:
jQuery('#uploadify').uploadifyUpload();

动态传参的onclick方法:
$('#uploadify').uploadifySettings('scriptData',{'bizType':$('#bizType').val(),'providerCode':$('#providerCode').val(),'subProviderCode':$('#subProviderCode').val(),'budgetInst':$('#budgetInst').val(),'memo':$('#memo').val()});jQuery('#uploadify').uploadifyUpload()
简单的说,就是用uploadifySettings函数在提交之前注入了参数。

总的来说,这个功能很绚丽,如果前台显示不出来,除了是路径问题外,还有可能是flash没装,版本至少flash9吧
分享到:
评论
7 楼 godwinx 2012-09-20  
能把spring mvc 的例子贴出来吗?
6 楼 anmy123 2012-06-21  
看了一下,还不错,可以学习一下
5 楼 seeYourEye 2012-04-10  
mzba520 写道
楼主,麻烦贴一下你的springmvc代码,可以吗?
MultipartFile uploadify无法实例化。
Specified class is an interface

org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.web.multipart.MultipartFile]: Specified class is an interface

我也遇到这个问题了,,,
4 楼 mzba520 2012-04-03  
楼主,麻烦贴一下你的springmvc代码,可以吗?
MultipartFile uploadify无法实例化。
Specified class is an interface
3 楼 dada_fangfang 2011-10-20  
哥们 你尝试着debug下,上面springMVC的例子file变量写错了,应该是uploadify,这是你上传的文件的流。有了文件流,你要怎么做都是可以的。你先定位下问题在哪吧,是在不行代码传上来,我帮你看看
2 楼 warnerhit 2011-10-19  
最好是完整代码,前台和后台的
1 楼 warnerhit 2011-10-19  
能把你的SpringMVc的代码贴出来吗 急用,我的老提示上传错误! 谢了!

相关推荐

    SpringMVC+Spring+Mybatis三大框架综合练习[MySQL/AJAX/IDEA]

    jsp/servlet--->oracle数据库--->项目讲解--->Mybatis框架---->spring框架---->springmvc框架--->ssm三大框架整合--->maven--->SVN/GIT--->hibernate框架--->struts2框架--->linux...

    SpringMVC.docx

    5. **拦截器机制**:Struts2有自己独特的拦截器(Interceptor)机制,而SpringMVC采用AOP(面向切面编程)的方式实现拦截功能。 #### 五、SpringMVC的优势 - **灵活性**:SpringMVC允许开发者自由选择视图技术,如...

    struts2资料

    - **上传与下载**:支持文件上传和下载功能。 - **JSON支持**:能够与JSON格式的数据进行交互,适合于Ajax和移动应用。 **5. MVC的优点** - **复用性**:模型可以被多个视图重用,减少代码冗余。 - **解耦合**:...

    struts2_课堂讲义

    根据给定的文件信息,以下是对Struts2框架及其相关技术知识点的详细解析: ### Struts2框架概览 Struts2是Apache基金会下的一个开源Web应用框架,它继承了Struts1的优点,并在此基础上进行了大量的改进和扩展,...

    dwz_springmvc

    1. **配置文件**:Spring的配置文件(如`applicationContext.xml`)用于定义bean和依赖注入,Spring MVC的配置文件(如`servlet-context.xml`)用于设置URL映射和视图解析器。 2. **Java类**:包括控制器...

    jQuery+Ajax+三层模型详讲[Java]

    jsp/servlet--->oracle数据库--->项目讲解--->Mybatis框架---->spring框架---->springmvc框架--->ssm三大框架整合--->maven--->SVN/GIT--->hibernate框架--->struts2框架--->linux...

    全套Java、Android、HTML5前端视频教程

    - Servlet与JSP概述。 - MVC设计模式讲解。 - EL表达式与JSTL标签库。 - **JavaWEB项目实战(图书商城)** - 项目需求分析与设计。 - 前后端分离架构实现。 - 数据持久层技术选用。 **3. JavaEE阶段** - **...

    java1000题基础百战程序员

    - **Servlet/JSP/EL/JSTL/AJAX** - Servlet的工作原理 - JSP页面生命周期 - EL表达式语言 - JSTL标签库使用 - AJAX异步请求与响应 #### 六、框架技术 - **Struts2/Hibernate/Spring** - Struts2的工作流程 -...

    springmvc集成 tiles2实现页面模板局部刷新

    2. **配置Tiles2**:在Spring的配置文件(如`dispatcher-servlet.xml`)中,我们需要声明Tiles2的视图解析器。这包括设置`TilesViewResolver`类和相应的属性,例如视图前缀和后缀。 3. **定义Tiles配置**:创建一个...

    姓名_javaEE软件工程师_2年_模板(42).doc

    - 熟练掌握 Struts 2 框架及其高级特性,包括拦截器、结果集、值栈、OGNL、表单验证以及 Struts2+AJAX 等技术。 - 熟悉 Struts 2 工作流程。 5. Hibernate 框架: - 熟练掌握 Hibernate 框架,包括一对多及多对...

    自整理Java关于基础和框架的面试题

    ##### SpringMVC、struts1和struts2区别 - **SpringMVC**:轻量级框架,与Spring无缝集成。 - **Struts1**:较早的MVC框架,使用ActionForm。 - **Struts2**:基于拦截器的设计模式。 ##### Struts2中result中的...

    java ajax angular jquery ionic 框架视频教程

    SSH框架指的是Struts2、Spring和Hibernate这三个框架的组合。同样适用于构建JavaWeb应用。 #### 关键知识点: - **Struts2**:一个基于MVC设计模式的Web框架,专注于前端的展示和控制逻辑。 - **Spring**:与SSM...

    SpringMVC面试专题及答案整理1

    - 入口点不同:Spring MVC由Servlet控制,Struts2由Filter控制。 - 开发方式:Spring MVC基于方法,每个URL对应一个方法;Struts2基于类,一个类处理多个请求。 - 数据访问方式:Spring MVC使用参数解析器,...

    maven spring springmvc sqlyog myeclipse tomcat

    **MyEclipse** 是一个集成开发环境(IDE),特别是针对Java EE开发,它在Eclipse的基础上扩展了更多功能,如对JSP、Servlet、Struts、Spring等的支持,使得Web应用开发更为便捷。 **Tomcat** 是Apache软件基金会的...

    Java面试宝典2018

    - 适配器模式的两种实现方式? #### 6. Linux - **知识点概述**: - Linux系统的基本命令。 - 进程管理、文件权限控制等。 - Shell脚本编写基础。 - **常见面试题**: - 如何查看当前系统运行时间? - 如何...

    Spring MVC面试宝典1.pdf

    - **配置方式**:SpringMVC倾向于使用注解配置,而Struts2主要依赖XML配置文件。 ##### 3.2 SpringMVC怎么样设定重定向和转发的? - **重定向**:在控制器方法中返回一个字符串"redirect:/url"。 - **转发**:返回...

    软件工程师简历

    2. **框架技能**:熟练掌握SpringMVC、Spring、MyBatis、Struts2、Hibernate等主流Java Web框架。 3. **数据库技术**:精通标准SQL语句,能够使用Oracle、MySQL、SQL Server等多种数据库,并了解NoSQL数据库MongoDB...

Global site tag (gtag.js) - Google Analytics