设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
中问网首页
我的收藏
站长博客
搜索
搜索
本版
帖子
用户
第一问答网
»
论坛
›
中问网
›
问答
›
springmvc框架原理分析
返回列表
发新帖
springmvc框架原理分析
[复制链接]
11
|
1
|
2018-8-27 17:37:00
|
显示全部楼层
|
阅读模式
springmvc全名是spring web mvc,springmvc是spring的一个模块,并且看名字即可知道,springmvc是一个基于mvc设计模式的前端web框架。mvc:m(model模型)、v(view视图)、c(control控制)
SpringMVC的工作原理图:
原理.png (68.72 KB, 下载次数: 8)
下载附件
2018-8-27 17:14 上传
1、发起请求到前端控制器(DispatcherServlet),该控制器中就会过滤出你哪些请求可以访问该servlet哪些不可以,就是url-pattern的作用,并且会加载springmvc.xml配置文件
2、前端控制器会找到HandlerMapping(处理器映射器),通过HandlerMapping完成url到controller映射的组件,通俗点讲,就是将在springmvc.xml中配置的或者注解的url与对应的处理类找到并进行存储,实际上是用一个map集合来保存这种映射关系,map
; 这样,就将所有的这种映射关系都记录保存了下来
3、通过HandlerMapping有了这些映射关系,并且找到了url对应的处理器,HandlerMapping就会将其处理器(图中红色标明的handler)返回,在其返回之前,在加上很多的拦截器,其作用后面进行讲解,这里知道在返回的处理器前会有很多的拦截器即可。
4、DispatcherServlet拿到了handler之后,找到HandlerAdapter(处理器适配器),通过它来访问处理器,并且执行处理器。
这里会有人会有疑惑,为什么需要处理器适配器,我们都获得了处理类了,直接调用不就行了吗?
不行,因为我们只知道处理类在哪里,并不知道执行处理类中的哪个方法,其实也就是不知道处理类是通过哪种方式创建出来的,实现HttpRequestHandler?还是注解方式,或者是其他方式,我们不知道,所以需要HandlerAdapter来帮我们确认调用哪个方法。
5、执行处理器
6、处理器会返回一个ModelAndView对象给HandlerAdapter
7、通过HandlerAdapter将ModelAndView对象返回给前端控制器(DispatcherServlet)
8、前端控制器请求视图解析器(ViewResolver)去进行视图解析,根据逻辑视图名解析成真正的视图(jsp),其实就是将ModelAndView对象中存放视图的名称进行查找,找到对应的页面形成视图对象
9、返回视图对象到前端控制器。
10、视图渲染,就是将ModelAndView对象中的数据放到request域中,用来让页面加载数据的。
11、通过第8步,通过名称找到了对应的页面,通过第10步,request域中有了所需要的数据,那么就能够进行视图渲染了。最后将其返回
组件说明:
DispatcherServlet:作为前端控制器,整个流程控制的中心,控制其它组件执行,统一调度,降低组件之间的耦合性,提高每个组件的扩展性。
HandlerMapping:通过扩展处理器映射器实现不同的映射方式,例如:配置文件方式,实现接口方式,注解方式等。
HandlAdapter:通过扩展处理器适配器,支持更多类型的处理器。
ViewResolver:通过扩展视图解析器,支持更多类型的视图解析,例如:jsp、freemarker、pdf、excel等。
回复
使用道具
举报
千问
|
2018-8-27 17:37:00
|
显示全部楼层
感兴趣的朋友可以直接联系我哦
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
千问
主题
0
回帖
4882万
积分
论坛元老
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
积分
48824836
加好友
发消息
回复楼主
返回列表
问答
热门排行
1
盆腔积液刚开始15×7现在3×7严重吗
2
西宁流产哪里治疗
3
你好我和你一个姓,我经常胃里面有酸辣的
4
28岁了含胸驼背能治疗吗?
5
女!34岁感觉有尿憋不住!遗尿!
6
我们在外地旅游,期间发现了水痘,怎么办
7
急性阴道炎怎样治疗
8
急性阴道炎中医治疗
9
我家孩子晚上睡觉总是不到一分钟就要尿尿
10
昨天来了大姨妈到中午一直好好的,中午吃
11
哈尔滨多囊卵巢会排卵吗
12
乙肝表面抗原为阳性,谷丙转氨酶为197
13
脚上被泰迪咬了,该去打针吗
14
哈尔滨多囊卵巢治疗得花多少钱
15
哈尔滨多囊卵巢囊肿的治疗
16
西宁做流产
17
看多了黄片丁丁是不是长的很慢
18
西宁稽留流产手术要多少钱
19
阴道口长有肉,怎么回事嘛不痛不痒今天刚
20
我是单纯性糠疹,用乙氧苯柳胺后变红了
21
静脉曲张,已有将近一年病史,现在肌肤严
22
急性阴道炎好治吗
23
就是上腹反反复复的隐约痛就是不舒服
24
哈尔滨多囊卵巢综合症治
25
急性阴道炎能治吗
26
双肾结石和右侧输尿管结石怎么治疗
27
哈尔滨多囊卵巢可以生育吗
28
宝宝怎么老是用手使劲擦眼睛
29
沈阳辽中区生殖器疱疹怎么治?
30
本人34岁,15周+4做的唐氏筛查,显
31
西宁市流产哪里好
32
哈尔滨多囊卵巢难治吗
33
西宁做流产哪家安全
34
沈阳辽中区生殖器疱疹怎么治疗好?
35
晚上7点吃了几块苦瓠子,过了半小时感觉
36
从小有鼻炎引起的头晕,治疗后查说鼻炎好
37
肛瘘术后半年没愈合。怎么回事
38
西宁哪家做流产
39
今天第一次给自己打了屁股针,成功了,以
40
我宫颈糜烂,然后查出来后两个月经量少,
41
你好本人最近尿频尿急还尿痛前段时间
42
沈阳辽中区生殖器疱疹怎么治疗?
43
混合性阴道炎症状
44
哈尔滨多囊卵巢能治疗好吗
45
沈阳辽中区生殖器疱疹治疗费用?
46
哈尔滨多囊卵巢有哪些方法
47
红光治疗阴道炎怎么样
48
医生我想问问,是不是肾积水严重了,后背
49
两天前大便有点黑色带血,昨天也是,今天
50
哈尔滨多囊卵巢哪里好
51
渭南肠胃病检查多少钱
52
精液流到内裤上干后有黑点是什么情况?
53
沈阳辽中区生殖器疱疹治疗?
54
哈尔滨多囊卵巢症状有哪些
55
身上出痒疙瘩,反反复复出,很痒,挠破了
56
包皮系带上有一块一块的东西。洗不掉。不
57
经常吹空调夏天脚干裂
58
光疗治疗阴道炎