SpringMVC 學習-上傳文件分解器 CommonsMultipartResolver 類


Spring 組件 CommonsMultipartResolver 類的主要作用是配置文件上傳的一些屬性,也可以控制上傳文件的大小。

在 springmvc-servlet.xml 配置文件中:

<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
  <property name="defaultEncoding">
    <!-- 編碼方式 -->     <value>UTF-8</value>   </property>   <property name="maxUploadSize">
    <!-- 上傳文件的最大值,如限制20M以內:20*1024*1024=52428800 -->     <value>52428800</value>   </property>
  <!-- 緩存大小 -->   <property name="maxInMemorySize">     <value>4096</value>   </property> </bean>

一般 bean 的 id 僅作為一個唯一的標識,但是在這里你必須保證 id 是 multipartResolver,其他的還有 localeResolver、themeResolver 等。

為什么要固定 id 呢?

原因是在 SpringMVC 的核心類 DispatcherServlet 中,把這些 bean 的 id 固定了。代碼如下:

public class DispatcherServlet extends FrameworkServlet {
    public static final String MULTIPART_RESOLVER_BEAN_NAME = "multipartResolver";
    public static final String LOCALE_RESOLVER_BEAN_NAME = "localeResolver";
    public static final String THEME_RESOLVER_BEAN_NAME = "themeResolver";

以后如遇到配置正常但卻無法工作的,可以去 DispatcherServlet 中看看是不是 id 被固定了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM