springmvc源码之ViewResolver视图解析器
系列文章目录
springmvc源码之Web上下文初始化
springmvc源码之DispatcherServlet前端控制器
springmvc源码之HandlerMapping处理器映射器
springmvc源码之HandlerAdapter处理适配器
springmvc源码之ViewResolver视图解析器
原文链接 https://zhhll.icu/2020/框架/springmvc/底层剖析/4.ViewResolver/
ViewResolver视图解析器
ViewResolver进行视图解析,根据逻辑视图名解析成真正的视图,首先根据逻辑视图名解析成物理视图名即具体的页面地址,再生成View视图对象,最后对View进行渲染将处理结果通过页面展示给用户。 springmvc框架提供了很多的View视图类型,包括:jstlView、freemarkerView、pdfView等。
public interface ViewResolver {
View resolveViewName(String viewName, Locale locale) throws Exception;
}
实现类
- AbstractCachingViewResolver 抽象的视图解析器类,提供了缓存视图的功能
- XmlViewResolver 接受一个XML格式的配置文件,默认的配置文件名是WEB-INF/views.xml
- ResourceBundleViewResolver 采用bundle根路径所指定的ResourceBundle中的bean定义作为配置
- UrlBasedViewResolver 使用URL来解析到视图名,针对单一视图类型进行解析
- InternalResourceViewResolver 继承UrlBasedViewResolver,支持内部资源视图,jsp类型的视图
- FreeMarkerViewResolver 继承UrlBasedViewResolver,支持FreeMarker视图及其子类
InternalResourceViewResolver
InternalResourceViewResolver将逻辑视图名称解析为View对象,架构该对象渲染的任务委托给Web应用程序上下文的一个模板
<!-- 配置视图解析器,将ModelAndView及字符串解析为具体的页面 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property>
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
本文来自博客园,作者:拾光师,转载请注明原文链接:https://www.cnblogs.com/life-time/p/17864317.html 个人博客-> https://zhhll.icu
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
2021-01-17 JDBC基本操作