码迷,mamicode.com
首页 > 编程语言 > 详细

spring mvc 框架运行机制

时间:2019-04-23 17:21:23      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:功能   control   let   lan   style   使用   解决   工作流程   eem   

spring mvc 运行主要的组件:

 1 前端控制器 (dispatchservlet) 相当于一个重要处理器,它用来调用其他功能模块来分工的效应一次请求,主要起调度的作用。

 

 2. handler 映射器 : 用于前端控制器发送给他的url 找到 用于处理这个url 的 handler(controller) 找个这个controller 的名字之后,将该controller 的名字返回给 前端控制器

  问题:返回的东西不只有这一个名字,还有别的东西。

 

 3.  handle 处理器: 用于将前端处理器发送给他的handler(controller )的名字, 去在handler(controller)里面去找,然后按照 我自己的规则去执行这个handler,执行完之后返回的是一个modelandview 的对象,然后将这个对象 发送给前端处理器。

 

4. 视图解析器: 用于将前端发送给他的一个视图(如jsp freemarker)的名字,解析为真正的视图。

 

俗语: 我(前端控制器) 虽然自己的没有什么特别的能力, 但是我会用人, 我手下有三元大将, 大将军(handler 映射器)帮我帮我寻找到底是哪个controller 可以帮我处理这次浏览器的威胁,二将军(handle处理器) 帮我将 controller 运算一遍转换成真正的处理结果, 三将军(视图解析器) 帮我将一个 视图的名字,给我解析成一个真正的视图。

整体的工作流程如下:                               技术图片

 流程:浏览器发出危险行为, 首领(disaptchservlet) 询问 大将军(handlerMapping) “我该如何迎战”, 大将军拿出来先前想出的计谋(xml 配置文件)说“主公, 你看这个计谋(handler)可以解决危险”, 首领(disptchservlet) 招呼 二将军(handleradapter):“快快将此条计谋(handler)取出来, 演示一遍让我看看”, 二将军找到这条计谋,自己思考(执行)了一遍, 说“主公, 可以使用这套阵法(view),以及这套装备(model) 解决危险”。 首领 “ 特好, 三将军(viewresolver)快帮我将整套阵法(view)取出来,让我看看”  三将军取出 阵法(view)交由主公, 首领“ 有了阵法, 给士兵们配上这套装备(model) 就能解决问题了”

  

 

spring mvc 框架运行机制

标签:功能   control   let   lan   style   使用   解决   工作流程   eem   

原文地址:https://www.cnblogs.com/helloqiufei/p/10757424.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!