what is a resolver
resolver [rɪ'zɒlvə] 解析器
ViewResolver
The ViewResolver provides a mapping between view names and actual views.
Map<java.lang.String, org.springframework.web.servlet.View> map = null;
{view names : actual views}
举例1:
在 Controller 中 某个方法 return "s1"
经过 处理
<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
之后
DispatcherServlet:1251 - Rendering view [org.springframework.web.servlet.view.JstlView: name 's1'; URL [/WEB-INF/jsp/s1.jsp]] in DispatcherServlet with name 'dispatcher'
举例2:
PathMatchingResourcePatternResolver.class
如下
<context:component-scan base-package="cn.zno.s1" />
通过 patternResolver 处理之后
2016-10-04 10:29:17 DEBUG PathMatchingResourcePatternResolver:317 - Resolved classpath location [cn/zno/s1/] to resources [URL [file:/D:/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/zmvc/WEB-INF/classes/cn/zno/s1/]]
2016-10-04 10:29:17 DEBUG PathMatchingResourcePatternResolver:711 - Looking for matching resources in directory tree [D:\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\zmvc\WEB-INF\classes\cn\zno\s1]
2016-10-04 10:29:17 DEBUG PathMatchingResourcePatternResolver:773 - Searching directory [D:\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\zmvc\WEB-INF\classes\cn\zno\s1] for files matching pattern [D:/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/zmvc/WEB-INF/classes/cn/zno/s1/**/*.class]
2016-10-04 10:29:17 DEBUG PathMatchingResourcePatternResolver:483 - Resolved location pattern [classpath*:cn/zno/s1/**/*.class] to resources [file [D:\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\zmvc\WEB-INF\classes\cn\zno\s1\Test.class]]
最终得到pattern [classpath*:cn/zno/s1/**/*.class]
再扫描得到spring bean
resolver 的作用就是化繁为简,将简单的经过解析翻译成为最终需要的
全路径
二、视图解析器

what is a resolver的更多相关文章
- AutoMapper:Unmapped members were found. Review the types and members below. Add a custom mapping expression, ignore, add a custom resolver, or modify the source/destination type
异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html 应用场景:ViewModel==>Mode映射的时候出错 AutoMappe ...
- Asp.Net Web API 2第十一课——在Web API中使用Dependency Resolver
前言 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http://www.cnblogs.com/aehyok/p/3446289.html 本文主要来介绍在Asp.N ...
- 秒杀 ILSpy 等反编译利器 DotNet Resolver
http://dotnetresolver.eu5.org/downloads.html DotNet Resolver is a free .NET decompiler written in C# ...
- SPRING IN ACTION 第4版笔记-第六章Rendering web views-001- Spring支持的View Resolver、InternalResourceViewResolver、JstlView
一.Spring支持的View Resolver 二.InternalResourceViewResolver Spring supports JSP views in two ways: Inte ...
- Web API中使用Dependency Resolver
Web API中使用Dependency Resolver 前言 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http://www.cnblogs.com/aehyo ...
- Angular2 - Starter - Routes, Route Resolver
在基于Angualr的SPA中,路由是一个很重要的部分,它帮助我们更方便的实现页面上区域的内容的动态加载,不同tab的切换,同时及时更新浏览器地址栏的URN,使浏览器回退和前进能导航到历史访问的页面. ...
- Fix “Could not flush the DNS Resolver Cache: Function failed during execution” When Flushing DNS
ipconfig /flushdns It is possible that you’re getting an error message “Could not flush the DNS Reso ...
- .29-浅析webpack源码之Resolver.prototype.resolve
在上一节中,最后返回了一个resolver,本质上就是一个Resolver对象: resolver = new Resolver(fileSystem); 这个对象的构造函数非常简单,只是简单的继承了 ...
- from dns.resolver import Resolver ImportError: No module named dns.resolver
from dns.resolver import Resolver ImportError: No module named dns.resolver python2运行BBScan时提示: from ...
- io.netty.resolver.dns.DnsNameResolverContext
java.net.UnknownHostException: failed to resolve 'xxx.com' after 3 queries at io.netty.resolver.dns. ...
随机推荐
- python读写剪贴板
#coding:utf-8 import os import time import win32api import win32con import win32clipboard as w impor ...
- asp.net core webapi 日期返回中出现字母T
全局配置 在Startup文件中修改 // This method gets called by the runtime. Use this method to add services to the ...
- redis 数据类型为list命令整理以及示例
常用来制作队列,当然lpush+rpop也能做栈 #将RPUSH RPUSHX LPUSH LPUSHX一并介绍(具体介绍RPUSH和RPUSHX,因为其实就是插入的方向的区别) RPUSH key ...
- SSH原理与运用(一):远程登录(转)
作者: 阮一峰 日期: 2011年12月21日 SSH是每一台Linux电脑的标准配置. 随着Linux设备从电脑逐渐扩展到手机.外设和家用电器,SSH的使用范围也越来越广.不仅程序员离不开它,很 ...
- spring+mybatis框架搭建时遇到Mapped Statements collection does not contain value for...的错误
http://your233.iteye.com/blog/1563240 上面的博客总结了4个可能出现的问题,如下: 1.mapper.xml中没有加入namespace 2.mapper.xml中 ...
- 简单的node 服务端 响应get,返回json数据;
原文:http://blog.csdn.net/xn_28/article/details/50837019 const http = require('http'); const hostname ...
- python 找出一篇文章中出现次数最多的10个单词
#!/usr/bin/python #Filename: readlinepy.py import sys,re urldir=r"C:\python27\a.txt" disto ...
- Python之路(第五篇) Python基本数据类型集合、格式化、函数
一.变量总结 1.1 变量定义 记录某种状态或者数值,并用某个名称代表这个数值或状态. 1.2 变量在内存中的表现形式 Python 中一切皆为对象,数字是对象,列表是对象,函数也是对象,任何东西都是 ...
- springmvc相关
Springmvc的请求注解可分为四类: url请求地址(PathVariable). head请求头(RequestHeader.CookieValue). body请求体(RequestParam ...
- SparkStreaming--reduceByKeyAndWindow
1.reduceByKeyAndWindow(_+_,Seconds(3), Seconds(2)) 可以看到我们定义的window窗口大小Seconds(3s) ,是指每2s滑动时,需要统计 ...