springMVC

MVC原理

model(模型) : 数据模型,包含要展示的数据和业务功能.
view(视图) : 用户界面,在界面上显示模型数据
controller(控制器) : 起调度作用,接收用户请求,调用业务处理请求,共享数据模型并跳转界面.

在web开发中的模型是无法主动推给视图(无法主动更新用户界面),因为在web开发是请求-响应模型

前端控制器(controller)所有的请求都被发往该控制器统一处理,然后把请求分发给各自相应的处理程序.

MVC框架都有前端控制器,在web开发中必须在web.xml中配置前端控制器,一般的要么是Filter,要么是Servlet.springMVC基于Servlet

MVC流程图

涉及组件

springMVC

springMVC和spring WebFlux
spring WebFlux是基于异步非阻塞
springMVC是同步阻塞的IO模型

使用注解开发

控制层(mvc) @Controller
业务逻辑层(service) @Service
数据持久层(DAO) @Resposotory
其他组件使用通用注解 @Component

java代码:

xml配置:

requestMapping注解

静态资源访问