spring mvc (了解关键字 和执行流程即可)

  1. Spring mv 关键词

    a.dispatchServlet 处理中心
    b.handlerMapping url和控制器的映射
    c.handlerAdapter 控制器执行的适配器
    d.ViewResolver 视图分解器
    c. view具体解析试图
    d.HandlerExceptionReslover 异常扑捉起
    e.HandlerInteceptor 拦截器

  2. 体系机构 和执行流程
    在这里插入图片描述在这里插入图片描述
    可以看源码当值的doDispatch()在这里插入图片描述
    总结 自我描述Springmvc 执行过程 1.dispatchSerlvet - --调用gentHandler() —> 2.HandlerMapping (多个实现类循环便利返回HandlerExecutionChain) - ---- getHandlerAdapter(多个实现类循环便利返回HandlerApater)–> 3.HandlerApater — handler(具体业务)返回ModelAndView->4.ViewResolver(找到对应的view)–> 5.view(视图解析匹配) 返回
    (还有两个 HandlerExcepetionReslover 异常 和 HandlerInterceptor过滤器(往下看))

重点
可以看看HandlerExecutionChain
public class HandlerExecutionChain {
HandlerInterceptor; //过滤器 再去执行 handler()之前会走这个 例里有三个方法
1. peHandle(中间执行) 2.postHandle(最先执行) 3.afterHandle(最后执行)
}

  1. 关键词 详解

a. handlerMapping详解
其中mvc 中url 路径与control对象的映射 dispatchServlet 就是基于这个组件来进行寻找对应的control 找不到就会报错
NOT Found mapping 的异常

接口方法 getHandler() 返回 HandlerExecutionChain 实现子类如下图 最后返回的是
在这里插入图片描述
b.
在这里插入图片描述

4.注解配置
在这里插入图片描述

  1. 细节

在spring mv.config 很多适配器什么都是不需要配置的 默认是有有的(DispatcherServlet.properties)
在这里插入图片描述
6.实现一个简单 Spring-mvc 框架
1.初始化的时候 基于bean 获取 所有controller层的方法 放在一个 key value 内存里面方便调用
2.根据url 去调用的时候 从内存里找 通过代理的方式去获取对应方法
在这里插入图片描述在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值