码迷,mamicode.com
首页 > 编程语言 > 详细

Spring MVC文件上传领悟

时间:2015-09-22 16:46:32      阅读:243      评论:0      收藏:0      [点我收藏+]

标签:

                                                                    Spring MVC文件上传领悟

    ,问题

        同样是表单提交,而文件不是明文,是二进制数据,怎么可以上传呢,spring mvc到底做了什么呢,今天我们就来探讨下

    二,解决方案

         首先我要说的是spring mvc的核心控制器 DispachServlet,这个控制器主要是用来起调度作用,他里面默认就带了一个文件上传的视图解析器,叫 multipartResolver,而这个视图解析器Spring MVC又提供了一个默认的实现,叫 CommonMultipartResolver,说白了这个实现底层用的就是 common-fileupload,所以在你的WEB环境下就有了 common-fileupload的依赖。

          那如果是我们手动来配置,如何配置呢?

          第一步,首先在我们的核心控制器加载的上下文文件中,加上如下解析器

                    技术分享

         注意,这个解析器有如下四个属性可以设置,大家可以按需设置

                defaultEncoding:表示请求的默认编码,当没有指定的时候根据Servlet规范会使用默认值ISO-8859-1

               uploadTempDir:设置上传文件时的临时目录,默认是Servlet容器的临时目录

               maxUploadSize:设置允许上传的最大文件大小,以字节为单位,-1表示没有限制

               maxInMemorySize:设置在文件上传时允许写到内存中的最大值,以字节为单位计算,默认是10240

        第二步,在我们视图层,为表单设置 enctype="multipart/form-data"(必须这样设置)

                        技术分享

        第三步,就是我们的控制器Controller如何接收了,我们可以使用3.x的新特性,注解

                        技术分享

Spring MVC文件上传领悟

标签:

原文地址:http://my.oschina.net/fajar/blog/509679

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!