类 ViewNameMethodReturnValueHandler
- java.lang.Object
- org.springframework.web.servlet.mvc.method.annotation.ViewNameMethodReturnValueHandler
- 所有已实现的接口:
HandlerMethodReturnValueHandler
public class ViewNameMethodReturnValueHandler extends Object implements HandlerMethodReturnValueHandler
Handles return values of typesvoid
andString
interpreting them as view name reference. As of 4.2, it also handles generalCharSequence
types, e.g.StringBuilder
or Groovy'sGString
, as view names.A
null
return value, either due to avoid
return type or as the actual return value is left as-is allowing the configuredRequestToViewNameTranslator
to select a view name by convention.A String return value can be interpreted in more than one ways depending on the presence of annotations like
@ModelAttribute
or@ResponseBody
. Therefore this handler should be configured after the handlers that support these annotations.- 从以下版本开始:
- 3.1
- 作者:
- Rossen Stoyanchev, Juergen Hoeller
构造器概要
构造器 构造器 说明 ViewNameMethodReturnValueHandler()
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 String[]
getRedirectPatterns()
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.
构造器详细资料
ViewNameMethodReturnValueHandler
public ViewNameMethodReturnValueHandler()
方法详细资料
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()
The configured redirect patterns, if any.
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.