当前位置: 首页 > news >正文

什么是MVC模式

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

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运行流程

 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三大组件

  • DispatcherServlet前端控制器

  • HandlerMapping处理器映射器

  • HandlerAdapter处理器适配器

本阶段学习目标

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

课程大纲

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

SpringMVC三大组件

 RESTFUL风格

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

请求转发

 

 

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

文件上传下载

 

 

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

拦截器

 

常见问题和疑惑

1 为什么要使用SpringMVC框架,他有什么优势?

SpringMVC是以强大的Spring容器为基础的框架,在Spring基础上整合方便,无缝整合. 除此之外,它还具有一整套完善组件,配置简单灵活,代码可重用性和高课扩展性好等一系列优点,是目前市场上主流的MVC框架

2 SSM在面试中问的多不多? 有哪些侧重点?

SSM在早年刚出现的时候,面试中问的比较多,但是随着技术更新,SSM面试的问题都比较少,都比较侧重基础和一些原理性的问题,或者是一些源码上的问题, 常见面试技术要点基本在每章节授课时都已经提及,面试前刷一刷马士兵教育源码课程即可.

3 SSM这一章节最重要的是不是就是SSM整合?会整合是不是就说明学会了?

 SSM整合的学习非常重要,但是整合之后还是要使用我们每个章节所学习的技能点来完成业务的开发,所以SSM整合是一种认识性的基础性的知识,最重要的还是完成业务的开发,学习业务中每个环节所使用的一些技术要点才可以

http://www.xdnf.cn/news/848683.html

相关文章:

  • 保姆级教程,龙蜥操作系统安装使用一步到位!
  • Netty框架基本介绍
  • Python Spyder开发的应用项目_pyscada应用
  • 终于有人把华为认证全部说清楚了
  • 广告召回率是什么意思_图解机器学习的准确率、精准率、召回率、F1、ROC曲线、AUC曲线...
  • Linux---项目自动化构建工具-make/Makefile
  • ViT (Visual Transformer)
  • 阿里云域名搭建DNSLOG
  • 深度学习AI编译器-LLVM简介
  • 枚举概念与特性
  • 【Java开发环境配置】7-Apache Tomcat安装教程环境变量配置IDEA配置(27)
  • base64编码简介
  • 频率与补偿(下)
  • 一文带你了解MindSpore的知识及安装入手
  • 我收集的搜索引擎
  • 带你深入了解Android Handler的用法
  • Java HashMap 详解
  • 2024热门专业详细解读:信息安全专业及其就业前景(1)
  • UE4动态修改物体材质
  • B 站疯传,堪称最强,10 大免费的白嫖网站
  • 浏览器输入127.0.0.1显示拒绝访问
  • 网络安全入门,渗透测试详细介绍和流程方法
  • Linux---cp和mv命令选项
  • 23种模式——策略模式
  • JavaScript(JS)的indexOf和lastIndexOf函数全解析
  • mydisktest测试软件,MyDiskTest
  • 尤雨溪-基本介绍
  • 你想要的系列:网络请求框架OkHttp3全解系列 - (一)OkHttp的基本使用
  • Ubuntu操作系统
  • 三十分钟学会SCALA