首页 > 其他分享 >SpringMVC 基于MVC设计理念的优秀WEB框架

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

时间:2023-02-25 19:57:08浏览次数:42  
标签:WEB 拦截器 SpringMVC 视图 MVC 处理器 DispatcherServlet

课程简介和目标

 

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

 

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常见注解总结

拦截器

 

标签:WEB,拦截器,SpringMVC,视图,MVC,处理器,DispatcherServlet
From: https://www.cnblogs.com/2324hh/p/17155205.html

相关文章

  • SpringMVC
    目录二、SpringMVC简介2.1什么是SpringMVC2.2.SpringMVC的作用2.3.SpringMVC原理2.4.SpringMVC执行流程:2.4.1涉及组件分析:2.5搭建SpringMVC项目环境:2.5.1、代码实现第一......
  • 【学习笔记】SpringMVC执行原理
    SpringMVC执行原理执行步骤每一步的解释如下:DispatcherServlet表示前端控制器,是整个SpringMVC的控制中心,用户发出请求,DispatcherServlet接受请求并拦截请求请求的......
  • JavaWeb-动力节点
    目录......
  • HTML5的WebSocket使用
    index.html(客户端)1<!DOCTYPEhtml>2<htmllang="en">3<head>4<metacharset="UTF-8"/>5<metaname="viewport"content="width=device-width......
  • web前端开发第202页习题3代码
    排序参考1<!DOCTYPEhtml>2<htmllang="en">34<head>5<metacharset="UTF-8">6<metahttp-equiv="X-UA-Compatible"content="IE=edge">7......
  • uni-app:从webview跳转到应用内其他页面(hbuilderx 3.7.3)
    一,代码:1,页面代码:<template><view><web-view:fullscreen="true":style="{height:height+'px'}":webview-styles="webviewStyles":src='websrc'allow......
  • JAVAWEB-NOTE03-约束、数据库设计、多表查询、事务
    目录约束约束的概念约束的分类约束的演示外键约束数据库设计简介软件研发的步骤数据库设计概念数据库设计的步骤一对多(多对一)多对多一对一多表查询内连接外连接左外连接右......
  • 信息安全之常见web漏洞原理危害防御方法
    一暴力破解概述:在web攻击中,一般会使用这种手段对应用系统的认证信息进行获取。其过程就是使用大量的认证信息在认证接口进行尝试登录,直到得到正确的结果。为了提高效率,......
  • WebAssembly+gRPC web=未来?
    WebAssembly+gRPCweb=未来?WebAssembly是什么WebAssembly是一个可以使C#,Java,Golang等静态强类型编程语言,运行在浏览器中的标准,浏览器厂商基于此标准实现执行引擎。 ......
  • 理解MVCC
    MVCC就是多版本并发控制。MVCC是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问。为什么需要MVCC呢?数据库通常使用锁来实现隔离性。最原生的锁,锁住一......