Upload files with Spring MVC (Eclipse-based tutorial)
- Details
-
Last Updated on 15 December 2012
This tutorial is about how to implement file upload functionality with Spring MVC framework. To handle file uploads, Spring provides a MultipartResolver bean which is responsible for resolving multipart request. This resolver is working with two file upload libraries:
-
- Apache Commons File Upload: The bean class is org.springframework.web.multipart.commons.CommonsMultipartResolver
- COS (com.oreilly.servlet): The bean class is org.springframework.web.multipart.cos.CosMultipartResolver
- Apache Commons File Upload: The bean class is org.springframework.web.multipart.commons.CommonsMultipartResolver
We need to declare the MultipartResolver bean in Spring’s context file as follows:
For CommonsMultipartResolver:
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!-- max file size in bytes --> <property name="maxUploadSize" value="2000000" /> <!-- other properties... --> </bean>
And for CosMultipartResolver:
<bean id="multipartResolver" class="org.springframework.web.multipart.cos.CosMultipartResolver"> <!-- max file size in bytes --> <property name="maxUploadSize" value="2000000" /> <!-- other properties... --> </bean>
Also we need to add to classpath jar files of the file upload library employed:
-
- For Apache Commons File Upload: commons-fileupload-VERSION.jar and commons-io-VERSION.jar (Commons File Upload depends on Commons IO).
- For COS: cos.jar
As Apache Commons File Upload is popular and preferred over COS, this tutorial will use it. We will build a Spring MVC application which has an upload form looks like in the following screenshot:

This tutorial requires the following pieces of software installed on your computer (click on a link to download the corresponding software):
- Prev
- Next >>









