博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring MVC学习笔记(六)
阅读量:5861 次
发布时间:2019-06-19

本文共 1160 字,大约阅读时间需要 3 分钟。

hot3.png

所有的MVC框架都为web应用提供定位views。Spring提供view解析器,不限定具体的view技术,将models渲染到浏览器。

有两个重要的接口ViewResolver和View。ViewResolver提供view名称与实际views之间的映射。

使用ViewResolver接口解析views

在Spring Web MVC控制器中,所有处理方法都对应view逻辑名。或显式或隐式。Spring中的Views由逻辑view名定位,由view解析器解析。Spring自带了多个view解析器。

AbstractCachingViewResolver
XmlViewResolver
ResourceBundleViewResolver
UrlBasedViewResolver 接单实现ViewResolver接口直接将view逻辑名解析为URL,无显式的映射定义。适用于逻辑名与view源文件名匹配。
InternalResourceViewResolver
VelocityViewResolver/FreeMarkerViewResolver
ContentNegotiatingViewResolver

使用JSP作为视图解析技术,可以使用UrlBasedViewResolver。该解析器将视图名解析为URL。

  
  
  

当返回逻辑视图名test时,将请求解析为/WEB-INF/jsp/test.jsp。

当在web应用中使用不同的view激素时,可以使用ResourceBundleViewResolver:

  
  

ResourceBundleViewResolver检索有basename定义的ResourceBundle。对每个假定的view,使用属性[viewname].(class)作为view class、属性[viewname].url作为view url。

解析器链

Spring支持多个视图解析器。通过在application上下文中添加多个解析器,必要时设置order属性确定顺序。order属性越高,使用顺序越靠后。

如果一个具体的视图解析器不能解析出某个视图,Spring在上下文中查找其他的视图解析器。如果视图解析器存在,Spring继续直到视图被解析。如果不存在,Spring将抛出ServletException。

转载于:https://my.oschina.net/yaoliyc/blog/212641

你可能感兴趣的文章
用ls如何实现文件按时间排序查看,谢谢! - AIX - ChinaUnix.net -
查看>>
禁止电脑安装某软件
查看>>
Paxos Made Simple
查看>>
观察者模式
查看>>
paip.C#.NET多线程访问 toolStripStatusLabel
查看>>
poj2411 2663 2420 dp+状态压缩(多米诺骨牌问题)
查看>>
2013年4月22日星期一JS操作 熟悉
查看>>
选中用户牙科诊所管理软件中也许会使用的标记牙问题的自定义控件
查看>>
知识学习VB.NET之从心体验
查看>>
Java回顾之JDBC
查看>>
effective c++ 条款13 以对象管理资源
查看>>
如何在 Visual Studio 2012 中关联 BI 项目
查看>>
sencha touch 学习笔记- ajax、jsonp、dom查找、组件查找、添加css
查看>>
Java的位运算符详解实例——与(&)、非(~)、或(|)、异或(^)
查看>>
Ubuntu下安装配置ScrumWorks
查看>>
电子商务数据运营的五大应用
查看>>
ASP.NET MVC3 Model验证总结(转)
查看>>
【C/C++】嵌入式程序员应该知道的0X10个C语言问题
查看>>
<转>Windows平台下Makefile学习笔记(一)
查看>>
Guava学习笔记:Guava新集合-Table等
查看>>