Mvc模式及SpringMvc执行原理

本文详细介绍了MVC模式和三层架构的概念,重点解析了SpringMvc的执行过程,从用户请求开始,经过前端控制器、处理器映射器、处理器适配器、处理器、模型视图到视图解析器,最后响应用户。涵盖了数据访问层、业务逻辑层和表现层的角色及交互。

MVC模式:视图 view、模型Model、控制器Controller

三层架构:表现层(web层)、业务逻辑层(service层)、数据访问层(dao层)、实体类()Model

实体类库,在java中都将其称为Entity实体类。数据库中用于存放数据,通常会用一个专门的类
来抽象出数据表的结构,类的属性就一对一的对应这表的属性。

数据访问层:主要是存放对数据类的访问,即对数据进行 增删改查

业务逻辑层:是将表示层与数据访问层之间联系起来。所负责的就是处理涉及业务逻辑
相关问题,比如在调用访问数据库之前,先处理数据、判断数据。

SpringMvc执行原理:
1、用户发送请求至前端控制器DispatcherServlet。
2、DispatcherServlet收到请求调用处理器映射器HandlerMapping.
3、处理器映射器根据请求url找到具体的处理器,生成处理器执行链HandlerExecutionChain
(包括处理器对象和处理器拦截器)一并返回给DispatcherServlet.
4、DispatcherServlet根据处理器Handler获取处理器适配器HandlerAdapter执行HanderAdapter
处理一系列的操作,如参数封装,数据格式化转换,数据验证等操作
5、执行处理器Handler(Controller,也叫页面控制器)。
6、Handler执行完成返回ModelAndView
7、HandlerAdapter将Handler执行结果ModerlAndView返回到DispatcherServler
8、DispatcherServlet将ModelAndView传给ViewReslover视图解析器
9、ViewReslover解析后返回具体View
10、DispatcherServlet对View进行渲染视图(即将模型数据model填充至视图中)。
11、DispatcherServlet响应用户。

### 回答1: Spring MVC 是一个基于 MVC(Model-View-Controller)模式的 Web 框架,它的执行原理如下: 1. 首先,客户端发送请求到 DispatcherServlet。 2. DispatcherServlet 根据请求信息,调用 HandlerMapping,解析请求对应的 Handler。 3. HandlerMapping 找到合适的 Handler 后,返回给 DispatcherServlet。 4. DispatcherServlet 根据返回的 Handler,调用相应的 Controller 进行业务处理。 5. Controller 处理完业务逻辑后,返回 ModelAndView 对象。 6. DispatcherServlet 根据 ModelAndView 中的 ViewName,调用 ViewResolver 进行视图解析。 7. ViewResolver 找到合适的 View 后,返回给 DispatcherServlet。 8. DispatcherServlet 根据返回的 View,渲染视图,并将响应返回给客户端。 总的来说,Spring MVC执行过程可以分为请求的分发、请求的处理和视图的解析渲染三个阶段。这种分层结构有利于应用的维护和扩展。 ### 回答2: Spring MVC 是一种基于Java的Web框架,用于构建Web应用程序。它的执行原理如下: 1. 客户端发送一个HTTP请求到服务器,并且请求被DispatcherServlet接收。 2. DispatcherServlet是Spring MVC框架的入口点,它拦截所有的请求,并根据请求URL找到对应的HandlerMapping(处理器映射)。 3. HandlerMapping 根据请求的URL找到对应的Handler(处理器)。Handler 是一个包含业务逻辑的组件,它会处理请求并返回一个ModelAndView 对象给DispatcherServlet。 4. DispatcherServlet 根据返回的ModelAndView 对象,调用对应的ViewResolver(视图解析器),将ModelAndView 对象转换为对应的视图。 5. ViewResolver 根据视图的逻辑名称,查找并返回真正的视图对象给DispatcherServlet。 6. DispatcherServlet 将ModelAndView 对象传递给视图对象,视图对象将模型数据和视图模板结合生成最终的视图展示给用户。 7. 视图通过response对请求做出响应,并将响应返回给客户端。 总结来说,Spring MVC执行原理包括请求的拦截与分发、处理器映射找到对应的处理器、处理器处理请求返回ModelAndView 对象、视图解析器解析ModelAndView 对象找到真正的视图、视图生成响应并返回给客户端。通过这个流程,Spring MVC能够实现灵活的业务逻辑处理和视图展示。 ### 回答3: Spring MVC 执行原理如下: 1. 客户端发送请求到前端控制器 DispatcherServlet。 2. DispatcherServlet 根据请求的 URL,寻找对应的 HandlerMapping(处理器映射器),用于映射请求到对应的 Controller。 3. HandlerMapping 找到合适的 Controller 后,将请求转发给 Controller。 4. Controller 处理请求,并调用适当的 Service 层来处理业务逻辑。 5. Service 层处理完业务逻辑后,将结果返回给 Controller。 6. Controller 将结果封装为 ModelAndView 对象,并将视图逻辑名和 Model 数据封装到 ModelAndView 中。 7. ModelAndView 对象返回给 DispatcherServlet。 8. DispatcherServlet 通过 ViewResolver(视图解析器)查找视图逻辑名对应的视图对象。 9. ViewResolver 将视图对象返回给 DispatcherServlet。 10. DispatcherServlet 将 ModelAndView 中的 Model 数据传递给视图对象,并将视图对象渲染为最终的响应结果。 11. 响应结果发送给客户端。 在此过程中,Spring MVC 中的核心组件包括: - DispatcherServlet:前端控制器,接收请求并分派给适当的处理器。 - HandlerMapping:处理器映射器,根据请求的 URL 找到对应的 Controller。 - Controller:处理请求,调用 Service 层处理业务逻辑。 - Service:处理业务逻辑。 - ModelAndView:封装视图及数据模型的对象。 - ViewResolver:视图解析器,将视图逻辑名解析为对应的视图对象。 - View:视图对象,负责渲染最终的响应结果。 Spring MVC执行原理是基于 Servlet 容器,通过前端控制器的统一调度,实现了请求的分发和处理,将业务逻辑与视图解耦,提高了代码的可维护性和扩展性。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值