百度了一下找了个例子,这里记录一下,有空再实现继续完善
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中实现文件的上传和下载是常见的需求,这涉及到处理multipart/form-data类型的表单数据,以及对文件的存储和读取操作。 首先,让我们了解文件上传的基本流程。当用户通过表单提交带有文件的请求时,...
至于"Spring中文开发指南.pdf"文件,这通常是一份详尽的Spring MVC中文教程,涵盖了从基础概念到高级特性的全方位指导,包括依赖注入、数据绑定、异常处理、国际化、上传下载等功能。通过阅读这份指南,开发者可以更...
本文档将详细介绍如何在Spring MVC环境中配置并实现文件上传功能,包括必要的`web.xml`配置、Spring配置文件(如`upload-servlet.xml`)设置及控制器的具体编写。 #### 二、`web.xml`配置详解 `web.xml`文件用于...
在本文中,我们将深入探讨如何使用Spring MVC框架与Ajax技术结合来实现文件上传的功能。Spring MVC是Spring框架的一部分,提供了一种模型-视图-控制器(MVC)架构模式,用于构建Web应用程序。Ajax(Asynchronous ...
在本示例中,"spring mvc html5带进度条上传的例子" 展示了如何在Spring MVC中集成HTML5的新特性,特别是文件上传功能,以及如何在上传过程中展示进度条以提升用户体验。 HTML5中的`<input type="file">`元素提供了...
ckeditor整合Spring MVC实现富文本编辑器上传图片实例 项目描述 SpringMVC 实现Ckeditor富文本编辑器,上传图片 运行环境 jdk8+tomcat8+mysql+eclipse 项目技术(必填) spring+spring mvc
在本例中,"spring mvc小例子" 提供了一个简单的 Spring MVC 项目,其中可能包含了实现文件上传功能的代码。 1. **Spring MVC 基础** - **DispatcherServlet**: 是 Spring MVC 的核心,它负责接收请求,然后分发给...
这是一个简单完整的Spring MVC向导控制器(AbstractWizardFormController)的例子,包含所需的类包,可以运行,也是我重新熟悉Spring 的第二例子,明天再上传Spring 的例外个例子,如有问题,我们可以互相学习下.
Spring MVC 是 Spring 框架的一个模块,专为...通过分析这个例子,我们可以学习如何在Spring MVC中实现文件上传功能,以及如何组织和配置一个完整的Web应用程序。这将有助于提升我们对Spring MVC框架的理解和应用能力。
这篇博客“spring mvc文件上传下载实例”将引导我们如何在Spring MVC项目中实现这两个功能。 首先,我们需要理解Spring MVC的基本概念。Spring MVC是Spring框架的一个模块,它提供了处理HTTP请求并返回响应的能力,...
通过使用Spring MVC,开发者可以更方便地实现请求处理、视图渲染和数据绑定。 2. **环境准备**:要运行这个实例,首先需要安装MyEclipse集成开发环境,这是一款集成了多种开发工具的IDE,特别适合Java Web项目的...
3. **控制器(Controller)**:在Spring MVC中,控制器通常是实现了`Controller`接口或标记了`@Controller`注解的类。这些类包含了处理HTTP请求的方法,通常使用`@RequestMapping`注解来指定URL映射。例如: ```...
综上所述,这个"Spring MVC示例"项目是一个完整的Web应用程序实例,涵盖了Spring MVC的核心功能,以及附加的定时任务和文件操作功能。开发者可以通过研究这个示例,深入了解Spring MVC的工作原理和实践方法。
Spring MVC 是一个强大的Java Web开发框架,用于构建高效、可维护的Web应用程序。它基于Spring框架,提供了模型-视图-控制器(MVC)架构,简化了开发过程并支持多种集成技术。在搭建Spring MVC环境时,需要引入一...
在本示例中,"Spring MVC小例子" 提供了一个简单的登录功能,适合初学者了解和学习Spring MVC的基本概念和用法。 1. **Spring MVC 框架概述** Spring MVC 是 Spring 框架的一部分,它简化了开发Java Web应用程序的...
Spring Web MVC 的新特性部分详细介绍了该版本相较于之前版本的新功能和改进,包括但不限于对异步请求处理、测试支持、内容协商和文件上传功能的增强等。这为开发者提供了解决问题的新方法,并提高了开发效率。 ...
Spring MVC是Spring框架的一部分,专门用于构建Web应用程序,而uploadify是一款前端JavaScript插件,使得用户能够在浏览器端实现文件上传的便捷操作。 ### 1. Spring MVC 文件上传基础 Spring MVC提供了`@...
在"spring3MVC框架demo"中,包含了两个关键功能的实现:文件上传下载功能和使用xheditor发布消息功能。 首先,我们来详细了解一下Spring3MVC的基础配置。在Spring3MVC项目中,配置通常包括以下几个部分: 1. **web...
在Spring MVC + Activiti的场景下,这可能是一个示例附件,用于模拟用户在流程中上传的文件,比如请假申请的电子文档或者证明材料。 总的来说,这个小整合项目提供了一个实际运行的环境,让开发者可以学习到如何...
在本实例中,我们主要探讨了如何利用Layui库进行图片上传,同时结合表单提交和Spring MVC框架实现后端处理。Layui是一个轻量级的前端组件库,提供了丰富的UI组件,包括上传功能。以下是具体的知识点: 1. **Layui...