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"; //返回失败视图
- }
- }
- }
相关推荐
Spring MVC是Spring框架的一部分,提供了一种模型-视图-控制器(MVC)架构模式,用于构建Web应用程序。Ajax(Asynchronous JavaScript and XML)则是一种在无需刷新整个页面的情况下更新部分网页的技术。 首先,...
本书共计10章,分别介绍了快速搭建Spring Web应用、精通MVC结构、URL映射、文件上传与错误处理、创建Restful应用、保护应用、单元测试与验收测试、优化请求、将Web应用部署到云等内容,循序渐进地讲解了Spring MVC4...
在Spring MVC框架中,文件上传和下载是常见的功能需求,特别是在构建Web应用程序时。这个压缩包文件"Spring MVC 文件上传下载 后端 - Java.zip"包含的文档可能详细阐述了如何在Java后端实现这些功能。以下是关于...
在Spring MVC框架中,文件上传是一项常见的功能,用于接收用户通过表单提交的文件数据。这一功能对于构建Web应用程序,尤其是那些需要用户...通过理解并应用这些知识,你可以为你的Web应用程序添加强大的文件上传功能。
Spring MVC 是一个强大的Java web开发框架,用于构建可维护、模块化且松散耦合的Web应用程序。在本示例中,"spring mvc html5带进度条上传的例子" 展示了如何在Spring MVC中集成HTML5的新特性,特别是文件上传功能,...
Spring MVC 是一个强大的Java Web开发框架,用于构建可维护、高性能和灵活的Web应用程序。它在Spring框架的基础上,为处理HTTP请求提供了模型-视图-控制器(MVC)架构。在Spring MVC中实现文件的上传和下载是常见的...
接下来是Spring MVC,它是Spring框架的一部分,专为创建Web应用程序而设计。Spring MVC提供了模型-视图-控制器(MVC)架构,使得业务逻辑、数据处理和用户界面可以清晰地分离。在文件上传下载的场景中,Spring MVC的...
Spring MVC 是一个强大的Java web开发框架,用于构建可维护、模块化且松散耦合的Web应用程序。在Spring MVC中,文件的上传和下载是常见的功能需求,这涉及到客户端与服务器之间的数据传输。本篇文章将深入探讨Spring...
Spring MVC是Spring框架的一部分,主要用于构建Web应用程序,它提供了模型-视图-控制器(MVC)架构模式,使得开发过程更加模块化,易于维护。 1. **Spring MVC 框架**: Spring MVC提供了一个灵活的Web应用开发...
文件上传和下载功能是Web应用中常见的需求之一,Spring Web MVC通过MultipartResolver组件提供了对文件上传的支持。对于表单标签的支持,Spring Web MVC不仅简化了传统JSP标签的使用,还扩展了表单相关的处理能力。 ...
在IT领域,Spring MVC是Java开发者广泛使用的Web应用程序框架,它提供了模型-视图-控制器(MVC)架构模式,便于开发和管理复杂的Web应用。本教程将围绕“spring mvc web demo(helloworld)”这一主题,引导你了解...
Spring MVC是Spring框架的一个模块,用于处理Web应用程序的请求和响应。它遵循Model-View-Controller设计模式,将业务逻辑、数据和用户界面分离,使得代码更易于维护和扩展。 2. **Model-View-Controller (MVC) ...
Spring MVC是Spring框架的一部分,用于构建Web应用程序。版本4.2提供了许多增强功能,包括支持RESTful Web服务、更强大的数据绑定、类型安全的HTTP消息转换器等。对于文件上传,Spring MVC提供了便捷的API和配置...
总的来说,`spring-web`和`springs-webmvc`这两个模块构成了Spring框架在Web开发中的基础,它们协同工作,为开发者提供了强大的工具和灵活性,使得构建现代Web应用程序变得更加简单和高效。在实际项目中,开发者通常...
Spring MVC是Spring框架的一部分,专门用于构建Web应用程序,而uploadify是一款前端JavaScript插件,使得用户能够在浏览器端实现文件上传的便捷操作。 ### 1. Spring MVC 文件上传基础 Spring MVC提供了`@...
Spring MVC 是一个强大的Java web开发框架,用于构建可维护、高性能和灵活的Web应用程序。它在Spring框架的基础上提供了模型-视图-控制器(MVC)架构模式,简化了Web应用的开发。在这个"SevenDay-Spring MVC 实现...
Spring MVC是Spring框架的一个核心模块,专为构建Web应用程序提供模型-视图-控制器(MVC)架构。在Spring MVC 4.0版本中,它引入了许多改进和新特性,以提升开发效率和应用程序的性能。 1. **依赖注入**:Spring ...
Spring Web MVC是Spring框架的核心模块,它为构建Web应用程序提供了模型-视图-控制器(MVC)架构。这个"spring-webmvc.rar"压缩包包含了Spring Web MVC的源代码,允许开发者深入理解其内部机制,这对于学习和调试...
在基于Spring MVC的web应用中,我们将深入探讨以下几个关键知识点: 1. **MVC模式**:M(Model)代表业务逻辑,V(View)代表用户界面,C(Controller)负责协调Model和View。Spring MVC 将这三者解耦,使得开发更...
Spring MVC 是一个基于 Java 的轻量级 Web 开发框架,它是 Spring 框架的一个重要模块,主要用于构建 Web 应用程序的后端控制层。这个框架提供了模型-视图-控制器(MVC)设计模式的实现,简化了Java Web应用的开发...