SpringMVC篇

1、MVC

  • M:模型(Model)

  • V:视图(View)

  • C:控制器(Controller)

1.1、Model模型

进行业务处理,数据库存取数据操作。

1.2、View视图层

一个呈现界面的地方,如JSP等。

1.3、Controller控制层

接收用户请求,返回模型数据给视图,起到调度的作用。

2、中央处理器DispatcherServlet

负责请求分发,所有的请求都有经过它来统一分发,分发到不同的处理器。

处理器组件:

  • MultipartResolver:文件上传组件

  • LocaleResolver:资源定位组件

  • ThemeResolver:主题解析组件

  • HandlerMapping:处理器映射器组件

  • HandlerAdapter:处理器适配器组件

  • HandlerExceptionResolver:异常处理解析器组件

  • RequestToViewNameTranslator:视图名解析器组件

  • FlashMapMananger:重定向及flashMap存储组件

  • ViewResolvers:视图解析器组件

2.1、生命周期

  1. 加载和实例化:加载配置文件(web.xml),在容器启动时实例化。

  2. 初始化:实例化之后执行init()方法进行初始化。

  3. 请求处理:初始化完成之后,会调用service()方法处理收到的请求。

  4. 终止服务:在容器关闭的时候对象被销毁,销毁时会执行destroy()方法。

3、工作原理

img

  1. 客户端向服务端发送请求,这个请求会直接请求到DispatcherServlet(也叫中央控制器)。

  2. DispatcherServlet接收到请求后会调用HandlerMapping处理器映射器,解析对应的Handler。

  3. 解析到对应的Handler后,DispatcherServlet调用HandlerAdapter处理器适配器。

  4. HandlerAdapter处理器适配器会根据Handler调用真正的处理器处理请求,去执行Controller并得到ModelAndView,并层层返回给DispatcherServlet。

  5. DispatcherServlet将ModelAndView交给ViewReslover视图解析器解析,然后返回真正的视图。

  6. DispatcherServlet将模型数据填充到视图中。

  7. DispatcherServlet将结果响应给用户。

posted @   是老胡啊  阅读(35)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示