视图-请求与视图名的映射
RequestToViewNameTranslator
接口可以在逻辑视图名未被显式提供的情况下,决定一个可用的逻辑视图View
名。
DefaultRequestToViewNameTranslator
能够将请求URL映射到逻辑视图名上去,如下面代码例子所示:
请注意在handleRequest(...)
方法实现中,返回的ModelAndView
对象上自始至终未设置任何View
对象或逻辑视图名。这是由DefaultRequestToViewNameTranslator
完成的,它的任务就是从请求的URL中生成一个逻辑视图名。在上面的例子中,RegistrationController
与配置的ControllerClassNameHandlerMapping
一起使用的结果是,一个URL为<http://localhost/registration.html>
的请求,会经由DefaultRequestToViewNameTranslator
生成并对应到一个逻辑视图名registration
上。该逻辑视图名又会由InternalResourceViewResolver
bean解析到/WEB-INF/jsp/registration.jsp
视图上。
你无需显式地定义一个
DefaultRequestToViewNameTranslator
bean。如果默认的DefaultRequestToViewNameTranslator
配置已能满足你的需求,那么你无需配置,Spring Web MVC的DispatcherServlet
会为你实例化这样一个默认的对象。
当然,如果你需要更改默认的设置,那你就需要手动地配置自己的DefaultRequestToViewNameTranslator
bean。关于可配置属性的一些详细信息,你可以去咨询DefaultRequestToViewNameTranslator
类详细的java文档。
Last updated
Was this helpful?