`
wbj0110
  • 浏览: 1610713 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

spring mvc web应用程序的文件上传功能

    博客分类:
  • Java
阅读更多

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

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

Xml代码  收藏代码
  1. <bean id="multipartResolver"  
  2.  class="org.springframework.web.multipart.commons.CommonsMultipartResolver">  
  3.  <!-- 以字节为单位的最大上传文件的大小 -->  
  4.  <property name="maxUploadSize" value="100000" />  
  5. </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表单: 

Html代码  收藏代码
  1. <body>  
  2.  <h1>  
  3.   Spring MVC 3.0 文件上传测试  
  4.  </h1>   //action里的html是后缀名,不是HTML文件,用于spring对请求进行拦截判断  
  5.  <form. method="post" action="upload.html" enctype="multipart/form-data">  
  6.   <input type="text" name="name" />  
  7.   <input type="file" name="file" />  
  8.   <input type="submit" />  
  9.  </form>  
  10. </body>  



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

Java代码  收藏代码
  1. @Controller //声明该类为控制器类  
  2. public class FileUploadController implements ServletContextAware{ //实现ServletContextAware接口,获取本地路径  
  3.   
  4.  private ServletContext servletContext;  
  5.   
  6.  public void setServletContext(ServletContext servletContext) { //实现接口中的setServletContext方法  
  7.   this.servletContext = servletContext;  
  8.  }  
  9.   
  10.  @RequestMapping(value = "/upload", method = RequestMethod.POST) //将文件上传请求映射到该方法  
  11.  public String handleFormUpload(@RequestParam("name") String name, //设置请求参数的名称和类型  
  12.    @RequestParam("file") CommonsMultipartFile mFile) { //请求参数一定要与form中的参数名对应  
  13.   if (!mFile.isEmpty()) {  
  14.    String path = this.servletContext.getRealPath("/tmp/");  //获取本地存储路径  
  15.    File file = new File(path + new Date().getTime() + ".jpg"); //新建一个文件  
  16.    try {  
  17.     mFile.getFileItem().write(file); //将上传的文件写入新建的文件中  
  18.    } catch (Exception e) {  
  19.     e.printStackTrace();  
  20.    }  
  21.      
  22.    return "redirect:uploadSuccess"//返回成功视图  
  23.   }else {  
  24.    return "redirect:uploadFailure"//返回失败视图  
  25.   }  
  26.  }  
  27. }  
分享到:
评论

相关推荐

    spring mvc上传文件

    Spring MVC是Spring框架的一部分,提供了一种模型-视图-控制器(MVC)架构模式,用于构建Web应用程序。Ajax(Asynchronous JavaScript and XML)则是一种在无需刷新整个页面的情况下更新部分网页的技术。 首先,...

    精通Spring MVC 4

    本书共计10章,分别介绍了快速搭建Spring Web应用、精通MVC结构、URL映射、文件上传与错误处理、创建Restful应用、保护应用、单元测试与验收测试、优化请求、将Web应用部署到云等内容,循序渐进地讲解了Spring MVC4...

    Spring MVC 文件上传下载 后端 - Java.zip

    在Spring MVC框架中,文件上传和下载是常见的功能需求,特别是在构建Web应用程序时。这个压缩包文件"Spring MVC 文件上传下载 后端 - Java.zip"包含的文档可能详细阐述了如何在Java后端实现这些功能。以下是关于...

    spring mvc 文件上传 代码完整版

    在Spring MVC框架中,文件上传是一项常见的功能,用于接收用户通过表单提交的文件数据。这一功能对于构建Web应用程序,尤其是那些需要用户...通过理解并应用这些知识,你可以为你的Web应用程序添加强大的文件上传功能。

    spring mvc html5带进度条上传的例子.zip

    Spring MVC 是一个强大的Java web开发框架,用于构建可维护、模块化且松散耦合的Web应用程序。在本示例中,"spring mvc html5带进度条上传的例子" 展示了如何在Spring MVC中集成HTML5的新特性,特别是文件上传功能,...

    Spring MVC实现文件的上传下载

    Spring MVC 是一个强大的Java Web开发框架,用于构建可维护、高性能和灵活的Web应用程序。它在Spring框架的基础上,为处理HTTP请求提供了模型-视图-控制器(MVC)架构。在Spring MVC中实现文件的上传和下载是常见的...

    文件上传下载(maven + spring mvc + jetty)

    接下来是Spring MVC,它是Spring框架的一部分,专为创建Web应用程序而设计。Spring MVC提供了模型-视图-控制器(MVC)架构,使得业务逻辑、数据处理和用户界面可以清晰地分离。在文件上传下载的场景中,Spring MVC的...

    Spring MVC文件上传下载

    Spring MVC 是一个强大的Java web开发框架,用于构建可维护、模块化且松散耦合的Web应用程序。在Spring MVC中,文件的上传和下载是常见的功能需求,这涉及到客户端与服务器之间的数据传输。本篇文章将深入探讨Spring...

    JAVA(spring mvc)搭建了文件上传的接口,Android已经调试成功

    Spring MVC是Spring框架的一部分,主要用于构建Web应用程序,它提供了模型-视图-控制器(MVC)架构模式,使得开发过程更加模块化,易于维护。 1. **Spring MVC 框架**: Spring MVC提供了一个灵活的Web应用开发...

    Spring Web MVC入门教程

    文件上传和下载功能是Web应用中常见的需求之一,Spring Web MVC通过MultipartResolver组件提供了对文件上传的支持。对于表单标签的支持,Spring Web MVC不仅简化了传统JSP标签的使用,还扩展了表单相关的处理能力。 ...

    spring mvc web demo(helloworld)

    在IT领域,Spring MVC是Java开发者广泛使用的Web应用程序框架,它提供了模型-视图-控制器(MVC)架构模式,便于开发和管理复杂的Web应用。本教程将围绕“spring mvc web demo(helloworld)”这一主题,引导你了解...

    spring mvc核心包(包含文件上传)

    Spring MVC是Spring框架的一个模块,用于处理Web应用程序的请求和响应。它遵循Model-View-Controller设计模式,将业务逻辑、数据和用户界面分离,使得代码更易于维护和扩展。 2. **Model-View-Controller (MVC) ...

    ajaxupload在spring mvc4.2中实现简单文件上传

    Spring MVC是Spring框架的一部分,用于构建Web应用程序。版本4.2提供了许多增强功能,包括支持RESTful Web服务、更强大的数据绑定、类型安全的HTTP消息转换器等。对于文件上传,Spring MVC提供了便捷的API和配置...

    spring-web和spring-webmvc_4.2.4

    总的来说,`spring-web`和`springs-webmvc`这两个模块构成了Spring框架在Web开发中的基础,它们协同工作,为开发者提供了强大的工具和灵活性,使得构建现代Web应用程序变得更加简单和高效。在实际项目中,开发者通常...

    spring mvc uploadify上传文件

    Spring MVC是Spring框架的一部分,专门用于构建Web应用程序,而uploadify是一款前端JavaScript插件,使得用户能够在浏览器端实现文件上传的便捷操作。 ### 1. Spring MVC 文件上传基础 Spring MVC提供了`@...

    SevenDay-Spring MVC(基于Spring MVC实现文件上传与下载)的源代码

    Spring MVC 是一个强大的Java web开发框架,用于构建可维护、高性能和灵活的Web应用程序。它在Spring框架的基础上提供了模型-视图-控制器(MVC)架构模式,简化了Web应用的开发。在这个"SevenDay-Spring MVC 实现...

    spring mvc 4.0

    Spring MVC是Spring框架的一个核心模块,专为构建Web应用程序提供模型-视图-控制器(MVC)架构。在Spring MVC 4.0版本中,它引入了许多改进和新特性,以提升开发效率和应用程序的性能。 1. **依赖注入**:Spring ...

    spring-webmvc.rar

    Spring Web MVC是Spring框架的核心模块,它为构建Web应用程序提供了模型-视图-控制器(MVC)架构。这个"spring-webmvc.rar"压缩包包含了Spring Web MVC的源代码,允许开发者深入理解其内部机制,这对于学习和调试...

    基于Spring MVC的web应用

    在基于Spring MVC的web应用中,我们将深入探讨以下几个关键知识点: 1. **MVC模式**:M(Model)代表业务逻辑,V(View)代表用户界面,C(Controller)负责协调Model和View。Spring MVC 将这三者解耦,使得开发更...

    Spring MVC所需jar包

    Spring MVC 是一个基于 Java 的轻量级 Web 开发框架,它是 Spring 框架的一个重要模块,主要用于构建 Web 应用程序的后端控制层。这个框架提供了模型-视图-控制器(MVC)设计模式的实现,简化了Java Web应用的开发...

Global site tag (gtag.js) - Google Analytics