SpringMVC multipart文件上传
来源:互联网 发布:2017云计算安全问题 编辑:程序博客网 时间:2024/05/20 00:51
一、介绍
spring内建的multipart支持网络程序文件上传。我们可以通过配置MultipartResolver来启动上传支持。它定义在org.springframework.web.multipart包中。spring是通过使用Commons FileUpload插件来完成MultipartResolver的。
默认情况下,spring不处理multipar的form信息,因为开发者默认会自己去处理这部分信息,当然我们可以随时打开这个支持。这样对于每一个请求,都会查看它是否包含multipart的信息,如果没有则按流程继续执行。如果发现有,就会交给已经被声明的MultipartResolver进行处理,然后我们就能像处理其他普通属性一样处理文件上传了。
二、使用MultipartResolver
下面的例子显示了如何使用CommonsMultipartResolver
- <bean id="multipartResolver"
- class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
- <!-- one of the properties available; the maximum file size in bytes -->
- <property name="maxUploadSize" value="100000"/>
- </bean>
当然,我们要把所需的jar包放到lib中, 就是commons-fileupload.jar.
三、处理一个文件上传的form
当MultipartResolver处理完成以后,请求被处理成和普通请求一样。下面是页面文件。
- <html>
- <head>
- <title>Upload a file please</title>
- </head>
- <body>
- <h1>Please upload a file</h1>
- <form method="post" action="/form" enctype="multipart/form-data">
- <input type="text" name="name"/>
- <input type="file" name="file"/>
- <input type="submit"/>
- </form>
- </body>
- </html>
下一步是创建一个controller来处理文件上传。controller也和其他的一样,除了在我们的方法参数中使用MultipartHttpServletRequest或者MultipartFile。
- @Controller
- public class FileUpoadController {
- @RequestMapping(value = "/form", method = RequestMethod.POST)
- public String handleFormUpload(@RequestParam("name") String name,
- @RequestParam("file") MultipartFile file) {
- if (!file.isEmpty()) {
- byte[] bytes = file.getBytes();
- // store the bytes somewhere
- return "redirect:uploadSuccess";
- } else {
- return "redirect:uploadFailure";
- }
- }
- }
最后,我们要声明我们的controller和multipar解析器
- <beans>
- <bean id="multipartResolver"
- class="org.springframework.web.multipart.commons.CommonsMultipartResolver"/>
- <!-- Declare explicitly, or use <context:annotation-config/> -->
- <bean id="fileUploadController" class="examples.FileUploadController"/>
- </beans>
0 0
- SpringMVC multipart文件上传
- SpringMVC multipart(文件上传)
- SpringMVC multipart文件上传
- SpringMVC multipart文件上传
- springmvc + multipart 实现文件上传
- SpringMVC入门之九:multipart文件上传
- SpringMVC 文件上传:org.springframework.web.multipart.commons.CommonsMultipartFile
- SpringMVC multipart文件上传下载
- SpringMVC从数据库导入导出 CSV文件(利用multipart/form-data实现文件上传)
- multipart/form-data 上传文件
- 通过ajax上传multipart文件
- springMVC上传文件报错:The current request is not a multipart request
- SpringMVC multipart文件上传详细教程之一:项目概述及基本配置
- SpringMVC multipart文件上传详细教程之二:控制器的编写及异常处理
- SpringMVC multipart文件上传详细教程之三:视图及运行结果
- springmvc文件上传与表单为enctype="multipart/form-data" 的数据绑定
- 深入springMVC------文件上传源码解析(上篇) 最近在项目中,使用springmvc 进行上传文件时,出现了一个问题: org.springframework.web.multipart
- 上传文件multipart form-data boundary 说明
- 栈--二进制转化
- 邮箱验证
- linux命令之hexdump
- 应用Druid监控SQL语句的执行情况
- 实用教程:如何着色更高效
- SpringMVC multipart文件上传
- WebStorm注册码 PhpStorm注册码
- Android开发经验谈-很少有人会告诉你的Android开发基本常识
- NP问题~~NPC问题~~P问题~~精妙!
- 欢迎使用CSDN-markdown编辑器
- ffmpeg 转换语音格式
- Firebug 使用指南
- AlertDialog(对话框)的基础详解
- 何为Dispatch Sources