SpringMVC 基于MVC设计理念的优秀WEB框架

时间:2023-02-25 19:54:57

课程简介和目标


什么是MVC模式

MVC模式是目前WEB项目主要的项目架构模式,是一种非常优秀的三层架构模式,其三层是指视图层View,控制层Controller和模型层Model,它们分别完成不同的功能

  • View 层:视图层,用户提供用户的操作页面,是数据的展现层,也是用户接触的界面层
  • Controller层:控制层,接收视图层的请求数据并作出相应,控制页面跳转和交互逻辑的层面
  • Model层:模型层,包含处理业务逻辑的的服务部分(Service)和操作持久层的DAO,以及和数据库对应的实体类模型(pojo)。

mvc模式下开发的项目往往具备这样的几个组成部分

1 视图部分,对应MVC的VIEW层,其实就是一些页面,放在项目专门存放页面的位置即可,不同的项目位置稍有差异,一般该层的技术包含HTML CSS JS jQuery 等一些前端技术和框架以及一些 JSP FreeMaker Thymeleaf等模板引擎技术

2 controller包,对应MVC的Controller层,用于专门存放控制层代码,一般该层次技术包含Servlet或者对于Servlet封装之后的框架技术. SpringMVC框架主要就是对于该层次的处理

3 service 包,属于Model层的一部分,专门用于存放模型层计算业务逻辑的代码,在MyBatis-Plus中,也提供了一些对于该层次的基础的业务逻辑的封装

4 dao或者mapper包,也是属于Model层的一部分,专门用于存放操作持久层数据,实现CURD功能的代码,一般该层次的技术包含JDBC以及或者对于JDBC封装的框架技术,包含Hibernate ,MyBatis, MyBatisPlus, JDBCTemplate, JPA等等

5 pojo或者entity包,也是属于Model层的一部分,专门用于存放和数据库表格对应的实体类包,专门用于封装和传递数据,该层次一般设计的技术或者插件有Lombok,序列化等等

6 其他工具或者配置信息等包

SpringMVC的架构

SpringMVC 基于MVC设计理念的优秀WEB框架


SpringMVC运行流程

SpringMVC 基于MVC设计理念的优秀WEB框架


1.用户发送请求至前端控制器DispatcherServlet 2.DispatcherServlet收到请求调用处理器映射器HandlerMapping。 3.处理器映射器根据请求url找到具体的处理器,生成处理器执行链HandlerExecutionChain(包括处理器对象和处理器拦截器)一并返回给DispatcherServlet。 4.DispatcherServlet根据处理器Handler获取处理器适配器HandlerAdapter执行HandlerAdapter处理一系列的操作,如:参数封装,数据格式转换,数据验证等操作 5.执行处理器Handler(Controller,也叫页面控制器)。 6.Handler执行完成返回ModelAndView 7.HandlerAdapter将Handler执行结果ModelAndView返回到DispatcherServlet 8.DispatcherServlet将ModelAndView传给ViewReslover视图解析器 9.ViewReslover解析后返回具体View 10.DispatcherServlet对View进行渲染视图(即将模型数据model填充至视图中)。 11.DispatcherServlet响应用户。

SpringMVC运行时序

SpringMVC 基于MVC设计理念的优秀WEB框架



SpringMVC三大组件

  • DispatcherServlet前端控制器
  • HandlerMapping处理器映射器
  • HandlerAdapter处理器适配器

本阶段学习目标

  • 熟悉SpringMVC执行流程
  • 可以搭建SpringMVC项目配置三大组件
  • 熟练进行前后端数据传递和页面跳转控制
  • 能够独立整合SSM项目
  • 能够在SpringMVC项目下实现文件上传下载
  • 熟练使用SpringMVC拦截器
  • 能够使用SpringMVC的异常处理机制
  • 熟练使用所有SpringMVC的常见注解


课程大纲

  • 第一章 SpringMVC简介和项目搭建
  • SpringMVC简介
  • SpringMVC项目搭建
  • SpringMVC配置三大组件和请求访问资源细节问题
  • SpringMVC支持RESTFUL风格

SpringMVC三大组件

SpringMVC 基于MVC设计理念的优秀WEB框架


RESTFUL风格

SpringMVC 基于MVC设计理念的优秀WEB框架


  • 第二章 SpringMVC参数注入问题
  • 注入POJO类型参数
  • 注入Date类型参数
  • 注入List类型参数
  • 注入Map类型参数
  • 参数乱码问题及参数注入相关注解
  • 第三章 SpringMVC 响应相关问题
  • 响应void
  • 请求转发和响应重定向
  • forward和redirect关键字
  • ModelAndView的使用
  • 异步响应及JSON的使用
  • Spring SpringMVC MyBatis整合


请求转发

SpringMVC 基于MVC设计理念的优秀WEB框架


SpringMVC 基于MVC设计理念的优秀WEB框架


  • 第四章 文件上传和下载
  • 文件上传
  • 文件下载

文件上传下载

SpringMVC 基于MVC设计理念的优秀WEB框架

SpringMVC 基于MVC设计理念的优秀WEB框架


  • 第五章 拦截器,异常处理机制和SpringMVC常见注解总结
  • 拦截器概念引入
  • 拦截器API解释
  • 拦截器执行顺序
  • 异常处理机制简介
  • 异常处理的四种方式
  • SpringMVC常见注解总结

拦截器

SpringMVC 基于MVC设计理念的优秀WEB框架