简述SpringMVC

一、典型的Servlet + JSP + JavaBean

  • UserServlet看作业务逻辑处理(Controller)
  • User看作模型(Model)
  • user.jsp看作渲染(View)

二、高级MVC

  • 由DispatcherServlet对请求统一处理

三、SpringMVC

MVC与SpringMVC

  • Servlet容器为每个Web应用程序自动创建一个唯一的ServletContext实例
  • Servlet容器会首先初始化Spring MVC的DispatcherServlet,在DispatcherServlet启动时,它根据配置AppConfig创建了一个类型是WebApplicationContext的IoC容器,完成所有Bean的初始化,并将容器绑到ServletContext上。因为DispatcherServlet持有IoC容器,能从IoC容器中获取所有@Controller的Bean,因此,DispatcherServlet接收到所有HTTP请求后,根据Controller方法配置的路径,就可以正确地把请求转发到指定方法,并根据返回的ModelAndView决定如何渲染页面。

概述

  • 没有spring的时候,所有Controller都注册到Servlet容器。引进Spring后,所有Controller注册到IOC容器,IOC容器再绑定Servlet容器。
相关推荐
天文家18 分钟前
深入理解装饰器与适配器:从设计模式到 Spring AOP 的工程实践
java·设计模式
贺国亚22 分钟前
Spring-AI与LangChain4j
java·人工智能·spring
野生技术架构师36 分钟前
2026 Java面试宝典(春招/社招/秋招通用):没有前言,只有答案,直接开背
java·开发语言·面试
mN9B2uk1741 分钟前
数据库的约束简介
java·数据库·sql
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第99题】【Mysql篇】第29题:如何选择合适的分布式主键方案?
java·数据库·分布式·mysql·面试
极光代码工作室1 小时前
基于SpringBoot的任务管理系统
java·springboot·web开发·后端开发
人道领域1 小时前
【LeetCode刷题日记】131.分割回文串,动态规划优化
java·开发语言·leetcode
z落落2 小时前
C# 接口 interface (多接口实现、类+接口、成员重名)
java·开发语言
发际线向北2 小时前
0x05 深入了解JVM虚拟机(JVM方法调用 -Ⅰ)
java
宋哥转AI2 小时前
学了Spring AI Graph再看LangGraph,发现API几乎一模一样
java·人工智能·agent