Spring MVC Single File Upload Example

This tutorial shows an example on how to upload a single file using Spring MVC 4.x. You may also read Spring MVC Multiple Files Upload Example

For this tutorial we will create maven based web project in Eclipse.

If you already have an idea on how to create a maven project in Eclipse will be great otherwise I will tell you here how to create a maven project in Eclipse.


The following configurations are required in order to run the application

Eclipse Kepler
JDK 1.8
Tomcat 8
Have maven 3 installed and configured
Spring 4 and Apache commons IO dependencies in pom.xml

Now we will see the below steps how to create a maven based project in Eclipse
Step 1. Create a maven based web project in Eclipse

Go to File -> New -> Other. On popup window under Maven select Maven Project. Then click on Next. Select the workspace location – either default or browse the location. Click on Next. Now in next window select the row as highlighted from the below list of archtypes and click on Next button.


Now enter the required fields (Group Id, Artifact Id) as shown below

Group Id : com.roytuts
Artifact Id : spring-mvc-file

Step 2. Modify the pom.xml file as shown below.

Step 3. If you see JRE System Library[J2SE-1.5] then change the version by below process

Do right-click on the project and go to Build -> Configure build path, under Libraries tab click on JRE System Library[J2SE-1.5], click on Edit button and select the appropriate jdk 1.8 from the next window. Click on Finish then Ok.

Change also the Compiler compliance level as 1.8 from Java -> Compiler.

Step 4. Now when the build process finished then modify the web.xml file with below source code

Step 5. Create spring-config.xml file under src/main/resources directory with the below source code

Step 6. Create controllers.xml file under src/main/resources directory

Step 7. Create a directory called pages under webapp directory for putting created jsp views.

Step 8. Create Spring controller class which will handle user request and response

Step 9. Now create uploadFile.jsp file under webapp/pages directory for handling single file upload

Step 10. Run the application on Tomcat 8 server, you will see below outputs in the browser

When you hit the URL http://localhost:8080/spring-mvc-file/upload in the browser

spring mvc single file upload

When you browse and select a file

spring mvc single file upload

When the file successfully uploaded

spring mvc single file upload

Check the C:upload-dir

spring mvc single file upload

Thanks for reading.


Software Professional, I am passionate to work on web/enterprise application. For more information please go to about me. You can follow on Twitter. You can be a friend on Facebook or Google Plus or Linkedin

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload CAPTCHA.