快速业务通道

巧妙使用Spring对commons fileUpload的包装 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-18
ass, new ByteArrayMultipartFileEditor()); } }

注意:必须定义initBinder方法。

三、配置文件

接下来就是配置文件了,熟悉spring的人应该很容易看懂了。

1.web.xml

<servlet> <servlet-name>springStudy</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springStudy</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>

2.springStudy-servlet.xml

<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="maxUploadSize" value="50000000" /> <property name="defaultEncoding" value="utf-8" /> </bean> <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <prop key="/upload.do">uploadServlet</prop> </props> </property> </bean> <bean id="uploadServlet" class="chb.spring.study.web.FUploadController"> <property name="commandClass" value="chb.spring.study.web.FUploadBean" /> </bean>

注意:需要注意的是,在spring中要实现文件上传,必须在spring的上下文中定义MultipartResolver,这样spring在发现该表单请求是mutipart时,就会使用spring定义的解析器去解析。这里我们使用的是CommonsMultipartResolver,也就是会转化为commons fileupload。CommonsMultipartResolver继承自CommonsFileUploadSupport,而CommonsFileUploadSupport是对commons fileupload组件的包装,所以我们可以在定义multipartResolver时设置相关参数,比如最大允许上传文件数,字符编码等。这里设置<property name="defaultEncoding" value="utf-8" />就是为了解决中文问题。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号