`

Spring MVC 实现上传例子

阅读更多

百度了一下找了个例子,这里记录一下,有空再实现继续完善

 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中实现文件的上传和下载是常见的需求,这涉及到处理multipart/form-data类型的表单数据,以及对文件的存储和读取操作。 首先,让我们了解文件上传的基本流程。当用户通过表单提交带有文件的请求时,...

    spring mvc简单的例子和教程

    至于"Spring中文开发指南.pdf"文件,这通常是一份详尽的Spring MVC中文教程,涵盖了从基础概念到高级特性的全方位指导,包括依赖注入、数据绑定、异常处理、国际化、上传下载等功能。通过阅读这份指南,开发者可以更...

    spring mvc 附件上传代码

    本文档将详细介绍如何在Spring MVC环境中配置并实现文件上传功能,包括必要的`web.xml`配置、Spring配置文件(如`upload-servlet.xml`)设置及控制器的具体编写。 #### 二、`web.xml`配置详解 `web.xml`文件用于...

    spring mvc上传文件

    在本文中,我们将深入探讨如何使用Spring MVC框架与Ajax技术结合来实现文件上传的功能。Spring MVC是Spring框架的一部分,提供了一种模型-视图-控制器(MVC)架构模式,用于构建Web应用程序。Ajax(Asynchronous ...

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

    在本示例中,"spring mvc html5带进度条上传的例子" 展示了如何在Spring MVC中集成HTML5的新特性,特别是文件上传功能,以及如何在上传过程中展示进度条以提升用户体验。 HTML5中的`&lt;input type="file"&gt;`元素提供了...

    ckeditor整合Spring MVC实现富文本编辑器上传图片实例

    ckeditor整合Spring MVC实现富文本编辑器上传图片实例 项目描述 SpringMVC 实现Ckeditor富文本编辑器,上传图片 运行环境 jdk8+tomcat8+mysql+eclipse 项目技术(必填) spring+spring mvc

    spring mvc小例子

    在本例中,"spring mvc小例子" 提供了一个简单的 Spring MVC 项目,其中可能包含了实现文件上传功能的代码。 1. **Spring MVC 基础** - **DispatcherServlet**: 是 Spring MVC 的核心,它负责接收请求,然后分发给...

    Spring MVC 向导控制器完整的例子

    这是一个简单完整的Spring MVC向导控制器(AbstractWizardFormController)的例子,包含所需的类包,可以运行,也是我重新熟悉Spring 的第二例子,明天再上传Spring 的例外个例子,如有问题,我们可以互相学习下.

    spring mvc的例子

    Spring MVC 是 Spring 框架的一个模块,专为...通过分析这个例子,我们可以学习如何在Spring MVC中实现文件上传功能,以及如何组织和配置一个完整的Web应用程序。这将有助于提升我们对Spring MVC框架的理解和应用能力。

    spring mvc文件上传下载实例

    这篇博客“spring mvc文件上传下载实例”将引导我们如何在Spring MVC项目中实现这两个功能。 首先,我们需要理解Spring MVC的基本概念。Spring MVC是Spring框架的一个模块,它提供了处理HTTP请求并返回响应的能力,...

    spring mvc简单实例

    通过使用Spring MVC,开发者可以更方便地实现请求处理、视图渲染和数据绑定。 2. **环境准备**:要运行这个实例,首先需要安装MyEclipse集成开发环境,这是一款集成了多种开发工具的IDE,特别适合Java Web项目的...

    springmvc4简单例子

    3. **控制器(Controller)**:在Spring MVC中,控制器通常是实现了`Controller`接口或标记了`@Controller`注解的类。这些类包含了处理HTTP请求的方法,通常使用`@RequestMapping`注解来指定URL映射。例如: ```...

    Spring MVC示例

    综上所述,这个"Spring MVC示例"项目是一个完整的Web应用程序实例,涵盖了Spring MVC的核心功能,以及附加的定时任务和文件操作功能。开发者可以通过研究这个示例,深入了解Spring MVC的工作原理和实践方法。

    spring mvc框架需要用到的jar包

    Spring MVC 是一个强大的Java Web开发框架,用于构建高效、可维护的Web应用程序。它基于Spring框架,提供了模型-视图-控制器(MVC)架构,简化了开发过程并支持多种集成技术。在搭建Spring MVC环境时,需要引入一...

    Spring MVC小例子

    在本示例中,"Spring MVC小例子" 提供了一个简单的登录功能,适合初学者了解和学习Spring MVC的基本概念和用法。 1. **Spring MVC 框架概述** Spring MVC 是 Spring 框架的一部分,它简化了开发Java Web应用程序的...

    Spring MVC 4.2.4.RELEASE 中文文档v

    Spring Web MVC 的新特性部分详细介绍了该版本相较于之前版本的新功能和改进,包括但不限于对异步请求处理、测试支持、内容协商和文件上传功能的增强等。这为开发者提供了解决问题的新方法,并提高了开发效率。 ...

    spring mvc uploadify上传文件

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

    spring3MVC 框架demo

    在"spring3MVC框架demo"中,包含了两个关键功能的实现:文件上传下载功能和使用xheditor发布消息功能。 首先,我们来详细了解一下Spring3MVC的基础配置。在Spring3MVC项目中,配置通常包括以下几个部分: 1. **web...

    spring mvc+activiti+mybatis小整合

    在Spring MVC + Activiti的场景下,这可能是一个示例附件,用于模拟用户在流程中上传的文件,比如请假申请的电子文档或者证明材料。 总的来说,这个小整合项目提供了一个实际运行的环境,让开发者可以学习到如何...

    layui 图片上传+表单提交+ Spring MVC的实例

    在本实例中,我们主要探讨了如何利用Layui库进行图片上传,同时结合表单提交和Spring MVC框架实现后端处理。Layui是一个轻量级的前端组件库,提供了丰富的UI组件,包括上传功能。以下是具体的知识点: 1. **Layui...

Global site tag (gtag.js) - Google Analytics