Spring MVC 如何上传多个文件到指定位置

Spring MVC 如何上传多个文件到指定位置

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es)

本文遵循“署名-非商业用途-保持一致”创作公用协议

转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino否则,出自本博客的文章拒绝转载或再转载,谢谢合作。





Spring MVC Tutorial: How to Upload Multiple Files to Specific Location

This is another complete Spring MVC tutorial which accepts file on Upload form and copy it to specificfolder on “Submit” event. As usual we have a dependency on Hello World Spring MVC Example.

Spring MVC 如何上传多个文件到指定位置_第1张图片

So, these are the additions / changes we need to perform in this example:

  • New file: CrunchifyFileUploadController.java
  • New file: CrunchifyFileUpload.java
  • New file: uploadfile.jsp
  • New file: uploadfilesuccess.jsp
  • Modified file: crunchify-servlet.xml
  • 2 new jar filescommons-io-2.4.jar and commons-fileupload-1.3.jar

Here is a final project structure so you will get some idea on where to add files.

Spring MVC 如何上传多个文件到指定位置_第2张图片

Now let’s get started:

Step1: Pre-Requisite:

http://crunchify.com/hello-world-example-spring-mvc-3-2-1/ (Deploy this project successfully onTomcat)

Maven Dependencies:

Add below new dependencies to your project’s pom.xml file.

Step2: SpringController

Create a Spring 3 MVC based controller which handles file upload. There are two methods in thiscontroller:

  1. crunchifyDisplayForm – It simply forwards request to the pageuploadfile.jsp
  2. crunchifySave – Fetches the form using @ModelAttribute annotation and get the File content from it. It creates a list of filenames of files being uploaded and pass this list to success page.

Step3: Model – Form Object

Create a Java bean which acts as Model/Form object for our Spring application. This bean contains a List of org.springframework.web.multipart.MultipartFile objects. Spring framework provides a useful class MultipartFile which can be used to fetch the file content of uploaded file. Apart from its content, the MultipartFile object also gives you other useful information such as filename, file size etc.

Step4: JSP Views

Now create the view pages for this application. We will need two JSPs, one to display file upload form and another to show result on successful upload.

The uploadfile.jsp displays a form with file input. Apart from this we have added small jquery snippetonclick of Add button. This will add a new file input component at the end of form. This allows user toupload as many files as they want.

Note that we have set enctype=”multipart/form-data” attribute of our <form> tag.

Step5: Update Spring Configuration

Add below bean to crunchify-servlet.xml  file, just above  <beanid="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">  line.

Step6: Checkout Result

Start tomcat and point your browser to this URL: http://localhost:8080/CrunchifySpringMVC3.2.1/upload.html and you should see screen similar tothis.

Spring MVC 如何上传多个文件到指定位置_第3张图片

After file upload you will see success message like this. You can always beautify your .jsp file the wayyou want.

List of all Spring MVC Examples, Java Examples.

Have anything   to   add   to  this article? Please chime in and join the c onversi on.
SHARE ON
Twitter Facebook Google+ Buffer Pin It Follow @Crunchify

Enjoyed this post?

Be sure to subscribe to the Crunchify newsletter and get regular updates about awesomeposts just like this one and more! Join more than 13000 subscribers!

Enter your email address...  

About Crunchify

Hello & Good Day from greater New York. Crunchify is founded by App Shah. He is a professional blogger & loves Web development hence Crunchify.com is his publication with more than 10 millions pageviews per month, that covers all aspects and tactics on Java, WordPress, J2EE (Enterprise Java), Spring MVC, Github, etc Technologies.





你可能感兴趣的:(Spring MVC 如何上传多个文件到指定位置)