Spring MVC图解

  1. 浏览器 (客户端请求)
    用户通过浏览器发起HTTP请求,这个请求首先被Spring MVC的DispatcherServlet捕获。DispatcherServlet是前端控制器,用于协调整个请求处理过程。
  2. DispatcherServlet (前的端控制器)
    DispatcherServlet接收到请求后,首先会根据请求URL找到对应的Handler Mapping,这一步用于确定由哪个Controller来处理这个请求。
  3. Handler Mapping (映射处理器)
    Handler Mapping根据配置或注解,将请求URL映射到对应的处理器(通常是一个Controller方法),找到对应的处理器后,DispatcherServlet会将处理器传递给Handler Adapter。
  4. Handler Adapter (调用处理器)
    Handler Adapter负责调用具体的Controller方法。它会将请求信息传递给Controller,并在调用结束后接收处理结果(通常是一个Model或View)。
  5. Controller (控制层)
    Controller接收请求并处理中业务逻辑。它通常会调用Service层看来来完成业务处理,然后将处理结果封装到一个Model,对象中返回。
  6. Service (业务层) 和 DAO (数据库交互层)
    Service层负责业务逻辑的具体实现。它通常会调用DAO层来与数据库进行交互。DAO层负责从数据库中对获取数据或保存数据,Service层则基于这些数据执行业务逻辑并将结果返回给Controller。
    7 Spring. Model
    Model对象用来存储处理结果(通常是数据),这个对象会被传MVC传递到View层,用于数据展示。
  7. ViewResolver (视图解析器)
    View 的Resolver根据Controller返回的View名称(或者是直接从Controller返回的视图对象)解析出理具体的视图。视图通常是一个HTML、JSP或Thymeleaf模板。
    9.解 View
    View层负责将Model中的数据展示给用户。这个展示可能通过HTML页面、JSON和数据、XML数据等多种格式。
  8. 描述返回视图
    最终,DispatcherServlet将视图渲染的结果返回是给客户端(浏览器),用户看到请求的最终结果。
相关推荐
深盾科技4 分钟前
融合C++与Python:兼顾开发效率与运行性能
java·c++·python
我待_JAVA_如初恋5 分钟前
idea创建MavenJavaWeb项目以后,包结构缺java
java·ide·intellij-idea
来深圳11 分钟前
leetcode 739. 每日温度
java·算法·leetcode
CC大煊15 分钟前
【java】Druid数据库连接池完整配置指南:从入门到生产环境优化
java·数据库·springboot
JIngJaneIL28 分钟前
基于java+ vue交友系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·交友
苹果酱056735 分钟前
解决linux mysql命令 bash: mysql: command not found 的方法
java·vue.js·spring boot·mysql·课程设计
程序员飞哥1 小时前
这样做的幂等也太全了吧
java·后端·spring
虫小宝1 小时前
返利软件架构设计:多平台适配的抽象工厂模式实践
java·开发语言·抽象工厂模式
ZePingPingZe1 小时前
秒杀-库存超卖&流量削峰
java·分布式