`
wu00yu11
  • 浏览: 57190 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

springMVC支持上传下载(转)

阅读更多
spring mvc 支持web应用程序的文件上传功能,是由spring内置的即插即用的MultipartResolver来实现的,这些解析器都定义在org.springframework.web.multipart包里。下面将使用CommonsMultipartResolver解析器来实现简单的文件上传功能。

    在web应用程序上下文配置文件中(我的配置文件名为 /WEB-INF/config/app-config.xml)定义如下:

 <bean id="multipartResolver"
  class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
  <!-- 以字节为单位的最大上传文件的大小 -->
  <property name="maxUploadSize" value="100000" />
 </bean>

    加入两个依赖的jar包(spring官网可以下载到对应版本的常用依赖jar包):

    com.springsource.org.apache.commons.io-1.4.0.jar
    com.springsource.org.apache.commons.fileupload-1.2.0.jar

    创建一个HTML表单:

 <body>
  <h1>
   Spring MVC 3.0 文件上传测试
  </h1>   //action里的html是后缀名,不是HTML文件,用于spring对请求进行拦截判断
  <form. method="post" action="upload.html" enctype="multipart/form-data">
   <input type="text" name="name" />
   <input type="file" name="file" />
   <input type="submit" />
  </form>
 </body>

    创建一个controller(控制器)来处理文件上传请求,FileUploadController.java:

@Controller //声明该类为控制器类
public class FileUploadController implements ServletContextAware{ //实现ServletContextAware接口,获取本地路径

 private ServletContext servletContext;

 public void setServletContext(ServletContext servletContext) { //实现接口中的setServletContext方法
  this.servletContext = servletContext;
 }

 @RequestMapping(value = "/upload", method = RequestMethod.POST) //将文件上传请求映射到该方法
 public String handleFormUpload(@RequestParam("name") String name, //设置请求参数的名称和类型
   @RequestParam("file") CommonsMultipartFile mFile) { //请求参数一定要与form中的参数名对应
  if (!mFile.isEmpty()) {
   String path = this.servletContext.getRealPath("/tmp/");  //获取本地存储路径
   File file = new File(path + new Date().getTime() + ".jpg"); //新建一个文件
   try {
    mFile.getFileItem().write(file); //将上传的文件写入新建的文件中
   } catch (Exception e) {
    e.printStackTrace();
   }
   
   return "redirect:uploadSuccess"; //返回成功视图
  }else {
   return "redirect:uploadFailure"; //返回失败视图
  }
 }
}
分享到:
评论
1 楼 cherry23415 2013-06-26  
乌鱼乌鱼[img][/img]

相关推荐

    springmvc ajax 文件上传下载文件 multiple

    springmvc 上传下载文件,支持 ajax,form 提交,支持 multiple 方式上传文件

    springmvc ajax 文件上传

    本例子提供了2中 springMVC 上传的例子,通过 ajax 提交的方式,通过 Form 提交的方式,同时获取上传后文件名称,支持多个文件上传。

    springMvc单文件多文件上传

    springMvc 文件上传,springMvc 支持单文件和多文件上传,

    springMvc所有jar

    springMvc所有jar--springmvc独立运行--springmvc和mybatis整合--springmvc加入json支持--文件上传--源码包

    springmvc demo

    Spring Web MVC是一种基于Java的实现了...支持本地化(Locale)解析、主题(Theme)解析及文件上传等;提供了非常灵活的数据验证、格式化和数据绑定机制;提供了强大的约定大于配置(惯例优先原则)的契约式编程支持。

    SpringMVC中文件(图片)上传和Json支持需要的相关jar包

    在SpringMVC项目中进行文件(图片)上传功能开发或者需要json数据格式支持,需要导入的相关包文件

    spring+springMVC所需全部jar.zip

    这里包含了构建spring项目和SpringMVC项目所需的全部jar,给你一站式的服务,一次下载永久使用, 文件包括 spring4.3.9所有jar以及其他所关联的jar并附有源码,方便大家使用,本人亲测安全,可靠,可用,也是本人...

    java-springmvc图片上传

    使用springmvc实现图片上传,希望大家多多支持了,多多评论。

    uploadifive SpringMVC文件上传Demo

    Springmvc利用uploadifive插件,文件上传,方便使用.支持多文件上传.

    SpringMVC框架 |文件下载与文件上传

    文章目录一、SpringMVC支持文件下载二、SpringMVC支持文件上传1.导入文件上传的两个jar包2.index.jsp前端页面3.配置文件上传解析器4.文件上传请求处理三、多文件上传 一、SpringMVC支持文件下载 假设要下载项目中的...

    springMvc文件上传完整版

    springMvc文件上传完整版,包含js和java代码,支持ajax上传,多文件上传,进度条显示,文件大小限制,参数传递,回调函数,很实用,js用的是最新的pupload.js,相当强大

    springmvc的各种jar包.zip

    springmvc的各种jar包:里面包括springmvc独立运行/springmvc和mybatis整合/springmvc加入json支持/文件上传/源码包

    完美整合框架包(Spring+SpringMVC+mybitas+文件上传下载+邮件+短信支持+生成PDF、Excel)

    Spring+SpringMVC+mybitas+文件上传下载+邮件+短信支持+生成PDF、Excel 你需要的包都在这里了

    springmvc高级.docx

    springmvc的高级应用 包含代码+知识点+详细解释 1. 参数绑定(集合类型) 2. 数据回显 3. 上传图片 4. json数据交互 5. RESTful支持 6. 拦截器

    springMVC教学视频详解(包括spring和mybatis的整合)

    此视频包含:springmvc入门教程(原理分析、环境搭建、前端控制器配置、Handler编写调试、非注解映射器和适配器、注解映射器和...springmvc上传图片;springmvc实现json交互;springmvc对RESTful支持;springmvc拦截器

    SpringMvc源码

    Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动...支持本地化(Locale)解析、主题(Theme)解析及文件上传等;

    SpringMVC相关Jar包

    SpringMVC、SpringMVC和Mybatis整合、SpringMVC加入Json支持、文件上传、源码包

    SpringMVC学习笔记整合搭建框架

    a)SpringMVC默认支持的类型 b)简单数据类型 c)Pojo类型 d)Pojo包装类型 e)自定义参数绑定 6、SpringMVC和Struts2的区别 第二天 1、高级参数绑定 a)数组类型的参数绑定 b)List类型的绑定 2、@RequestMapping注解的...

    Java源码 SpringMVC Mybatis Shiro Bootstrap Rest Webservice

    4. 文件上传、多线程下载服务化、发送邮件、短信服务化、部门信息服务化、产品信息服务化、信息发布服务化、我的订阅服务化、我的任务服务化、公共链接、我的收藏服务化等 系统模块: 1. 用户管理: 用户信息...

    一个可以直接运行的基于SpringMVC的web框架1.1.12

    版本管理,服务根路径工具类,文件上传工具类 1.0.10 集成ueditor在线编辑器 1.0.11 地址联动 1.0.12 Excel工具类 Word工具类 Java NIO实现socket工具类 分布式session jdk升级到1.7 嵌入式redis服务(只支持linux) ...

Global site tag (gtag.js) - Google Analytics