Jsp内置对象
Published in:2023-09-13 | category: 学习

MVC是一种软件设计模式,Model-View-Controller(模型-视图-控制器),最早出现在Smalltalk语言中,后被Sun公司推荐为JavaEE平台的设计模式。

MVC将应用程序分为了3个核心模块,这3个模块可以被称为业务层-视图层-控制层。

业务层:负责实现应用程序的业务逻辑,封装各种对数据的处理方法。它不会关心它回如何被视图层显示或者被控制器调用,它只接收数据并处理,然后返回一个结果。

视图层:负责应用程序对用户的显示,它从用户那里获取输入数据并通过控制层传给业务层处理,然后通过控制层获取业务层返回的结果并显示给用户。

控制层:负责控制应用程序的流程,它接收从视图层传过来的数据,然后选择业务层中的某个业务来处理,接收业务层返回的结果并选择视图层中的某个视图来显示结果。

核心组件

*DispatcherServlet前端控制器:SpringMVC的核心组件之一,充当请求的入口。通过前端控制器来接收前端用户发送的请求并交给各个组件来处理,DispatcherServlet还处理全局配置、异常处理和视图渲染等。

*HandlerMapper处理映射器:前端处理器接收了用户的请求后,将用户的请求交给处理映射器来进行处理。HandLerMapper根据请求的URL、请求方法等信息,确定应该由哪个处理器来处理该请求。它维护一个处理映射表,将URL映射到相应的处理器。

HandlerExecutionChain处理执行链:表示请求处理的执行链,包括处理器和拦截器的顺序。

*HandlerAdapter处理适配器:当处理映射器将请求处理之后,将处理好的Handler返回给前端控制器,前端控制器将Handler交给处理适配器来进行进一步的处理,处理适配器负责根据处理的类型调用具体的Controller(处理器)进行处理。

*Controller处理器:Controller是接收请求并根据业务逻辑进行处理。Controller处理请求后,将请求结果封装到ModelAndView对象中并进行返回。

ModelAndView:ModelAndView是一个包含处理结构的模型数据和要渲染的视图信息的对象,它将处理结果数据以及要展示的视图名称封装在一起,供视图解析器进行处理。

*ViewResolver视图解析器:当处理适配器将Handler处理成ModelAndView逻辑视图以后,将ModelAndView返回给前端控制器,前端控制器将ModelAndView交给视图解析器进一步进行解析,ViewResolver根据配置和规则,将逻辑视图名称解析为实际的视图对象。

View视图对象:它是将模型数据渲染到客户端的关键组件,当视图解析器将ModelAndView进行解析成View之后,视图需要进行渲染才能真正被用户看到。

Prev:
单例模式
Next:
MVC相关组件