开发工具与关键技术:Visual Studio
作者: 李哲定
撰写时间:2020年8月17日
什么是MVC
Spring MVC是Spring框架的一个模块,Spring
MVC和Spring无需通过中间整合层进行整合。 Spring
MVC是一个基于MVC的web框架。那什么是 MVC 呢?
MVC模式(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。
(1) 控制器(Controller)- 负责转发请求,对请求进行处理。
(2) 视图(View) - 界面设计人员进行图形界面设计。
(3) 模型(Model) - 程序员编写程序应有的功能(实现算法等等)、数据库专家进行数据管理和数据库设计(可以实现具体的功能)。
所以说,MVC 模式将程序划分成了三个组件,模型(Model)用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。视图(View)负责展示数据。 控制器(Controller)处理事件并作出响应(事件包括用户的行为,比如说请求)和数据 Model 上的改变。
· 用户发起request请求至控制器(Controller),控制接收用户请求的数据,委托给模型进行处理
· 控制器通过模型(Model)处理数据并得到处理结果,模型通常是指业务逻辑
· 模型处理结果返回给控制器
· 控制器将模型数据在视图(View)中展示,web中模型无法将数据直接在视图上显示,需要通过控制器完成。
· 控制器将视图response响应给用户,通过视图展示给用户要的数据或处理结果。
SpringMVC核心架构
· 发起请求到前端控制器 (DispatcherServlet)
· 前端控制器请求 HandlerMapping 查找 Handler,可以根据xml配置、注解进行查找
· 处理器映射器 HandlerMapping 向前端控制器返回Handler
· 前端控制器调用处理器适配器去执行 Handler
· 处理器适配器去执行 Handler
· Handler执行完成给适配器返回 ModelAndView
· 处理器适配器向前端控制器返回 ModelAndView,ModelAndView 是 Spring MVC 框架的一个底层对象,包括 Model 和 View
· 前端控制器请求视图解析器去进行视图解析,根据逻辑视图名解析成真正的视图 (jsp)
· 视图解析器向前端控制器返回 View
· 前端控制器进行视图渲染,视图渲染将模型数据(在 ModelAndView 对象中)填充到 request 域
· 前端控制器向用户响应结果
通常呢,我们做项目基本上大多数用的是Spring+SpringMVC+MyBatis三大框架整合的SSM框架,有时间的话再来搭一个简易的框架。在 Spring MVC 中用到了很多的注解,通过注解可以定义控制器等等。下面是一些常用的注解。
有些东西用的多就越用越顺手,但是实际操作跟理论方面都要重视,只有知道这个东西的原理才能走的更远。会用很简单的网上也有很多教程之类的东西,但是还是自己总结归纳的才记忆深刻。一味的敲代码并不能脱离码农,多了解核心的东西才会成长。