天天看點

multipartfile上傳檔案_SpringMVC怎麼實作檔案上傳的功能?MultipartResolver配置MultipartResolver:MultipartFile參數配置web.xml配置靜态資源通路儲存上傳的檔案一本書搞定Spring MVC使用!

在Spring MVC開發場景中,經常會遇到需要上傳并儲存檔案的功能,今天跟着小編來一起學習一下。

MultipartResolver

Spring MVC想要處理檔案,就必須使用MultipartResolver。

配置MultipartResolver:

首先,我們需要在網頁的form表單中添加enctype="multipart/form-data"參數。

然後,在Spring MVC的配置檔案中(spring-mvc.xml)配置MultipartResolver(CommonsMultipartResolver[需要commons-io.jar和commons-fileupload.jar]或者StandardServletMultipartResolver[Spring3.1以後])。如下圖:

multipartfile上傳檔案_SpringMVC怎麼實作檔案上傳的功能?MultipartResolver配置MultipartResolver:MultipartFile參數配置web.xml配置靜态資源通路儲存上傳的檔案一本書搞定Spring MVC使用!

最後,在DispatcherServlet的Servlet配置中加上multipart-config配置(隻針對StandardServletMultipartResolver[Spring3.1&Servlet3.0必須在注冊Servlet時配置multipart-config]),如:

multipartfile上傳檔案_SpringMVC怎麼實作檔案上傳的功能?MultipartResolver配置MultipartResolver:MultipartFile參數配置web.xml配置靜态資源通路儲存上傳的檔案一本書搞定Spring MVC使用!

MultipartFile參數

接下來,我們要在Controller方法參數中增加MultipartFile參數,在該參數上加上@RequestPart("paramname")注解,就可以使用了。在Servlet3.0之後,還可以使用Part參數代替MultipartFile參數,同時,并不需要配置MultipartResolver了,隻有使用MultipartFile的時候才需要MultipartResolver。

配置web.xml

web.xml中配置項目路徑:

multipartfile上傳檔案_SpringMVC怎麼實作檔案上傳的功能?MultipartResolver配置MultipartResolver:MultipartFile參數配置web.xml配置靜态資源通路儲存上傳的檔案一本書搞定Spring MVC使用!

配置靜态資源通路

servlet-mvc.xml中配置靜态資源通路:

multipartfile上傳檔案_SpringMVC怎麼實作檔案上傳的功能?MultipartResolver配置MultipartResolver:MultipartFile參數配置web.xml配置靜态資源通路儲存上傳的檔案一本書搞定Spring MVC使用!

如果使用注解配置方式,則是servletConfig實作WebMvcConfigurerAdapter,實作其configureDefaultServletHandling方法。

儲存上傳的檔案

最後,我們在controller中就可以儲存上傳的檔案了:

multipartfile上傳檔案_SpringMVC怎麼實作檔案上傳的功能?MultipartResolver配置MultipartResolver:MultipartFile參數配置web.xml配置靜态資源通路儲存上傳的檔案一本書搞定Spring MVC使用!

一本書搞定Spring MVC使用!