SpringMVC运行原理

一、核心组件

     1.DispatchServlet:Servlet分发器,整个SpringMVC框架入口

     2.HandlerMapping:寻找URL所请求的HandlerMethod,找@RequestMapping()

       2.1 使用实现类DefaultAnnotationHandlerMaping实际工作

     3.HandlerAdapter:实际调用HandlerMathod的组件

       3.1 使用实现类AnnotationMathodHandlerAdapter

     4.ViewResovler:视图解析器,作用解析HandlerMathod返回值,把逻辑视图转换为需要调用的物理视图

       4.1 自定义时使用InternalResourceViewResolver

二、当配置了<mvc:annotation-driven/>时,实际上创建了上面实现类的<bean>对象

三、还可能使用的组件或接口或类

     1.Controller : 控制器类

     2.HandlerMethod: 控制器方法

     3.View: 视图

     4.Model: 模型

     5.ModelAndView:模型和视图.SpringMVC所有HandlerMethod最终都会转换为ModelAndView

     6.HandlerInterceptor: 拦截器

     7. HandlerExceptionResolver:异常映射解析器.

     8.MultipartResolver: Multipart解析器

     9.CharacterEncodingFilter: 字符编码过滤器

四、时序图

五、文字解释

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值