类 ModelAndViewMethodReturnValueHandler
- java.lang.Object
- org.springframework.web.servlet.mvc.method.annotation.ModelAndViewMethodReturnValueHandler
- 所有已实现的接口:
HandlerMethodReturnValueHandler
public class ModelAndViewMethodReturnValueHandler extends Object implements HandlerMethodReturnValueHandler
Handles return values of typeModelAndView
copying view and model information to theModelAndViewContainer
.If the return value is
null
, theModelAndViewContainer.setRequestHandled(boolean)
flag is set totrue
to indicate the request was handled directly.A
ModelAndView
return type has a set purpose. Therefore this handler should be configured ahead of handlers that support any return value type annotated with@ModelAttribute
or@ResponseBody
to ensure they don't take over.- 从以下版本开始:
- 3.1
- 作者:
- Rossen Stoyanchev
构造器概要
构造器 构造器 说明 ModelAndViewMethodReturnValueHandler()
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 String[]
getRedirectPatterns()
Return the configured redirect patterns, if any.void
handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest)
Handle the given return value by adding attributes to the model and setting a view or setting theModelAndViewContainer.setRequestHandled(boolean)
flag totrue
to indicate the response has been handled directly.protected boolean
isRedirectViewName(String viewName)
Whether the given view name is a redirect view reference.void
setRedirectPatterns(String... redirectPatterns)
Configure one more simple patterns (as described inPatternMatchUtils.simpleMatch(java.lang.String, java.lang.String)
) to use in order to recognize custom redirect prefixes in addition to "redirect:".boolean
supportsReturnType(MethodParameter returnType)
Whether the given method return type is supported by this handler.
构造器详细资料
ModelAndViewMethodReturnValueHandler
public ModelAndViewMethodReturnValueHandler()
方法详细资料
setRedirectPatterns
public void setRedirectPatterns(String... redirectPatterns)
Configure one more simple patterns (as described inPatternMatchUtils.simpleMatch(java.lang.String, java.lang.String)
) to use in order to recognize custom redirect prefixes in addition to "redirect:".Note that simply configuring this property will not make a custom redirect prefix work. There must be a custom
View
that recognizes the prefix as well.- 从以下版本开始:
- 4.1
getRedirectPatterns
public String[] getRedirectPatterns()
Return the configured redirect patterns, if any.- 从以下版本开始:
- 4.1
supportsReturnType
public boolean supportsReturnType(MethodParameter returnType)
从接口复制的说明:HandlerMethodReturnValueHandler
Whether the given method return type is supported by this handler.- 指定者:
supportsReturnType
在接口中HandlerMethodReturnValueHandler
- 参数:
returnType
- the method return type to check- 返回:
true
if this handler supports the supplied return type;false
otherwise
handleReturnValue
public void handleReturnValue(Object returnValue, MethodParameter returnType, ModelAndViewContainer mavContainer, NativeWebRequest webRequest) throws Exception
从接口复制的说明:HandlerMethodReturnValueHandler
Handle the given return value by adding attributes to the model and setting a view or setting theModelAndViewContainer.setRequestHandled(boolean)
flag totrue
to indicate the response has been handled directly.- 指定者:
handleReturnValue
在接口中HandlerMethodReturnValueHandler
- 参数:
returnValue
- the value returned from the handler methodreturnType
- the type of the return value. This type must have previously been passed toHandlerMethodReturnValueHandler.supportsReturnType(org.springframework.core.MethodParameter)
which must have returnedtrue
.mavContainer
- the ModelAndViewContainer for the current requestwebRequest
- the current request- 抛出:
Exception
- if the return value handling results in an error
isRedirectViewName
protected boolean isRedirectViewName(String viewName)
Whether the given view name is a redirect view reference. The default implementation checks the configured redirect patterns and also if the view name starts with the "redirect:" prefix.- 参数:
viewName
- the view name to check, nevernull
- 返回:
- "true" if the given view name is recognized as a redirect view reference; "false" otherwise.