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、生命周期
-
加载和实例化:加载配置文件(web.xml),在容器启动时实例化。
-
初始化:实例化之后执行init()方法进行初始化。
-
请求处理:初始化完成之后,会调用service()方法处理收到的请求。
-
终止服务:在容器关闭的时候对象被销毁,销毁时会执行destroy()方法。
3、工作原理
-
客户端向服务端发送请求,这个请求会直接请求到DispatcherServlet(也叫中央控制器)。
-
DispatcherServlet接收到请求后会调用HandlerMapping处理器映射器,解析对应的Handler。
-
解析到对应的Handler后,DispatcherServlet调用HandlerAdapter处理器适配器。
-
HandlerAdapter处理器适配器会根据Handler调用真正的处理器处理请求,去执行Controller并得到ModelAndView,并层层返回给DispatcherServlet。
-
DispatcherServlet将ModelAndView交给ViewReslover视图解析器解析,然后返回真正的视图。
-
DispatcherServlet将模型数据填充到视图中。
-
DispatcherServlet将结果响应给用户。
本文来自博客园,作者:是老胡啊,转载请注明原文链接:https://www.cnblogs.com/solar-9527/p/15906450.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现