SpringMVC的运行原理

SpringMVC的运行原理

  1. 核心组件:(SpringMVC 四大组件)

1.1 DispatchServlet: Servlet分发器,整个SPringMVC框架入口.
1.2 HandlerMapping:寻找URL所请求的HandlerMethod,找@RequestMapping()
1.2.1 使用实现类DefaultAnnotationHandlerMapping实际工作.
1.3 HandlerAdapter:实际调用HandlerMethod的组件.
1.3.1 使用实现类AnnotationMethodHandlerAdapter
1.4 ViewResovler:视图解析器.作用解析HandlerMethod返回值.把逻辑视图转换为需要调用的物理视图.
1.4.1 自定义时:InternalResourceViewResolver

  1. 当配置了mvc:annotation-driven/时,实际上创建了上面实现类的对象
  2. 还可能使用的组件或接口或类:

3.1 Controller : 控制器类
3.2 HandlerMethod: 控制器方法
3.3 View: 视图
3.4 Model: 模型
3.5 ModelAndView:模型和视图.SpringMVC所有HandlerMethod最终都会转换为ModelAndView
3.6 HandlerInterceptor: 拦截器
3.7 HandlerExceptionResolver:异常映射解析器.
3.8 MultipartResolver: Multipart解析器
3.9 CharacterEncodingFilter: 字符编码过滤器

  1. 时序图(Sequence Diagram)

4.1 以时间点作为基本单位,观察每个时间点状态.
4.2 具体时序图
在这里插入图片描述

5.文字解释:这就是SpringMVC运行原理(给面试官说的)

当用户发起请求后,执行DiapacherServlet,如果是JSP直接调用jsp页面.如果不是JSP,DiapacherServlet调用HandlerMapping判断请求URL是否合法,如果URL不存在报错,如果URL存在使用HandlerAdapter调用具体的HandlerMethod,当HandlerMethod执行完成后会返回ModelAndView,会被ViewResovler解析,调用具体的物理视图.
最终响应给客户端浏览器.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AloneDrifters

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值