org.springframework.web.multipart.support

## Class StandardServletMultipartResolver

- java.lang.Object
- - org.springframework.web.multipart.support.StandardServletMultipartResolver

All Implemented Interfaces:
  MultipartResolver

    public class StandardServletMultipartResolver
    extends Object
    implements MultipartResolver

Standard implementation of the `MultipartResolver` interface, based on the Servlet 3.0 `Part` API. To be added as "multipartResolver" bean to a Spring DispatcherServlet context, without any extra configuration at the bean level (see below).

Note: In order to use Servlet 3.0 based multipart parsing, you need to mark the affected servlet with a "multipart-config" section in `web.xml`, or with a `MultipartConfigElement` in programmatic servlet registration, or (in case of a custom servlet class) possibly with a `MultipartConfig` annotation on your servlet class. Configuration settings such as maximum sizes or storage locations need to be applied at that servlet registration level; Servlet 3.0 does not allow for them to be set at the MultipartResolver level.

Since:
  3.1
Author:
  Juergen Hoeller

### Constructor Summary

Constructors
Constructor and Description
`StandardServletMultipartResolver()`

### Method Summary

Methods
`void` `cleanupMultipart(MultipartHttpServletRequest request)` Cleanup any resources used for the multipart handling, like a storage for the uploaded files.
`boolean` `isMultipart(HttpServletRequest request)` Determine if the given request contains multipart content.
`MultipartHttpServletRequest` `resolveMultipart(HttpServletRequest request)` Parse the given HTTP request into multipart files and parameters, and wrap the request inside a `MultipartHttpServletRequest` object that provides access to file descriptors and makes contained parameters accessible via the standard ServletRequest methods.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### StandardServletMultipartResolver

    public StandardServletMultipartResolver()

### Method Detail

#### isMultipart

    public boolean isMultipart(HttpServletRequest request)

Description copied from interface: `MultipartResolver`
Determine if the given request contains multipart content.

Will typically check for content type "multipart/form-data", but the actually accepted requests might depend on the capabilities of the resolver implementation.

Specified by:
  `isMultipart` in interface `MultipartResolver`
Parameters:
  `request` - the servlet request to be evaluated
Returns:
  whether the request contains multipart content

#### resolveMultipart

    public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request)
                                                 throws MultipartException

Description copied from interface: `MultipartResolver`
Parse the given HTTP request into multipart files and parameters, and wrap the request inside a `MultipartHttpServletRequest` object that provides access to file descriptors and makes contained parameters accessible via the standard ServletRequest methods.

Specified by:
  `resolveMultipart` in interface `MultipartResolver`
Parameters:
  `request` - the servlet request to wrap (must be of a multipart content type)
Returns:
  the wrapped servlet request
Throws:
  `MultipartException` - if the servlet request is not multipart, or if implementation-specific problems are encountered (such as exceeding file size limits)
See Also:
  `MultipartRequest.getFile(java.lang.String)`, `MultipartRequest.getFileNames()`, `MultipartRequest.getFileMap()`, `ServletRequest.getParameter(java.lang.String)`, `ServletRequest.getParameterNames()`, `ServletRequest.getParameterMap()`

#### cleanupMultipart

    public void cleanupMultipart(MultipartHttpServletRequest request)

Description copied from interface: `MultipartResolver`
Cleanup any resources used for the multipart handling, like a storage for the uploaded files.

Specified by:
  `cleanupMultipart` in interface `MultipartResolver`
Parameters:
  `request` - the request to cleanup resources for