| org.springframework.web.bind.annotation.RequestMapping
RequestMapping | public @interface RequestMapping(Code) | | Annotation for mapping web requests onto specific handler classes and/or
handler methods. Provides consistent style between Servlet and Portlet
environments, with the semantics adapting to the concrete environment.
NOTE: Method-level mappings are only allowed to narrow the mapping
expressed at the class level (if any). HTTP paths / portlet modes need to
uniquely map onto specific handler beans, with any given path / mode only
allowed to be mapped onto one specific handler bean (not spread across
multiple handler beans). It is strongly recommended to co-locate related
handler methods into the same bean.
Handler methods which are annotated with this annotation are allowed
to have very flexible signatures. They may have arguments of the following
types, in arbitrary order (except for validation results, which need to
follow right after the corresponding command object, if desired):
The following return types are supported for handler methods:
- A
ModelAndView object (Servlet MVC or Portlet MVC),
with the model implicitly enriched with command objects and the results
of
ModelAttribute annotated reference data accessor methods.
- A
java.util.Map object for exposing a model,
with the view name implicitly determined through a
org.springframework.web.servlet.RequestToViewNameTranslator and the model implicitly enriched with command objects and the results
of
ModelAttribute annotated reference data accessor methods.
- A
java.lang.String value which is interpreted as view name,
with the model implicitly determined through command objects and
ModelAttribute annotated reference data accessor methods.
The handler method may also programmatically enrich the model through
declaring a
org.springframework.ui.ModelMap attribute (see above).
void if the method handles the response itself
(e.g. through writing the response content directly).
NOTE: @RequestMapping will only be processed if a
corresponding HandlerMapping (for type level annotations)
and/or HandlerAdapter (for method level annotations) is
present in the dispatcher. This is the case by default in both
DispatcherServlet and DispatcherPortlet .
However, if you are defining custom HandlerMappings or
HandlerAdapters , then you need to make sure that a
corresponding custom DefaultAnnotationHandlerMapping
and/or AnnotationMethodHandlerAdapter is defined as well
- provided that you intend to use @RequestMapping .
author: Juergen Hoeller author: Arjen Poutsma since: 2.5 See Also: RequestParam See Also: ModelAttribute See Also: SessionAttributes See Also: InitBinder See Also: org.springframework.web.context.request.WebRequest See Also: org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping See Also: org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter See Also: org.springframework.web.portlet.mvc.annotation.DefaultAnnotationHandlerMapping See Also: org.springframework.web.portlet.mvc.annotation.AnnotationMethodHandlerAdapter |
Field Summary | |
RequestMethod[] | method The HTTP request methods to map to, narrowing the primary mapping:
GET, POST, HEAD, OPTIONS, PUT, DELETE, TRACE. | String[] | params The parameters of the mapped request, narrowing the primary mapping.
Same format for any environment: a sequence of "myParam=myValue" style
expressions, with a request only mapped if each such parameter is found
to have the given value. | String[] | value The primary mapping expressed by this annotation.
In a Servlet environment: the path mapping URLs (e.g. |
method | RequestMethod[] method(Code) | | The HTTP request methods to map to, narrowing the primary mapping:
GET, POST, HEAD, OPTIONS, PUT, DELETE, TRACE.
Only supported at the handler method level in Servlet environments!
|
params | String[] params(Code) | | The parameters of the mapped request, narrowing the primary mapping.
Same format for any environment: a sequence of "myParam=myValue" style
expressions, with a request only mapped if each such parameter is found
to have the given value. "myParam" style expressions are also supported,
with such parameters having to be present in the request (allowed to
have any value).
Only supported at the handler method level!
|
value | String[] value(Code) | | The primary mapping expressed by this annotation.
In a Servlet environment: the path mapping URLs (e.g. "/myPath.do")
In a Portlet environment: the mapped portlet modes (e.g. "EDIT")
Supported at the type level as well as at the method level!
When used at the type level, all method level mappings inherit
this primary mapping, narrowing it for a specific handler method.
|
|
|