springmvc源码之ViewResolver视图解析器

系列文章目录

springmvc源码之Web上下文初始化
springmvc源码之DispatcherServlet前端控制器
springmvc源码之HandlerMapping处理器映射器
springmvc源码之HandlerAdapter处理适配器
springmvc源码之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>

参考文献

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拾光师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值