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

J2EE框架技术第八章 SpringMVC框架技术

    序:我们之前已经对SSM框架中核心内容进行了学习,包括AOP和IOC等相关内容,接下来,我们看一下框架中常用的SpringMVC框架组件的使用方法。

第一节 springmvc理论

1)概念:

    Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet。

    Spring MVC 角色划分清晰,分工明细,并且和 Spring 框架无缝结合。Spring MVC 是当今业界最主流的 Web 开发框架,以及最热门的开发技能。

    在 Spring MVC 框架中,Controller 替换 Servlet 来担负控制器的职责,用于接收请求,调用相应的 Model 进行处理,处理器完成业务处理后返回处理结果。Controller 调用相应的 View 并对处理结果进行视图渲染,最终客户端得到响应信息。

    Spring MVC 框架采用松耦合可插拔的组件结构,具有高度可配置性,比起其它 MVC 框架更具有扩展性和灵活性。此外,Spring MVC 的注解驱动和对 REST 风格的支持,也是它最具特色的功能。

2)创建流程

搭建步骤如下:

    1.引入 JAR 包

    2.Spring MVC 配置:在 web.xml 中配置 Servlet,创建 Spring MVC 的配置文件

    3.创建 Controller(处理请求的控制器)

    4.创建 View

    5.部署运行

3)SpringMVC

SpringMVC 的执行流程如下。

  • 用户点击某个请求路径,发起一个 HTTP request 请求,该请求会被提交到 DispatcherServlet(前端控制器);

  • 由 DispatcherServlet 请求一个或多个 HandlerMapping(处理器映射器),并返回一个执行链(HandlerExecutionChain)。

  • DispatcherServlet 将执行链返回的 Handler 信息发送给 HandlerAdapter(处理器适配器);

  • HandlerAdapter 根据 Handler 信息找到并执行相应的 Handler(常称为 Controller);

  • Handler 执行完毕后会返回给 HandlerAdapter 一个 ModelAndView 对象(Spring MVC的底层对象,包括 Model 数据模型和 View 视图信息);

  • HandlerAdapter 接收到 ModelAndView 对象后,将其返回给 DispatcherServlet ;

  • DispatcherServlet 接收到 ModelAndView 对象后,会请求 ViewResolver(视图解析器)对视图进行解析;

  • ViewResolver 根据 View 信息匹配到相应的视图结果,并返回给 DispatcherServlet;

  • DispatcherServlet 接收到具体的 View 视图后,进行视图渲染,将 Model 中的模型数据填充到 View 视图中的 request 域,生成最终的 View(视图);

  • 视图负责将结果显示到浏览器(客户端)。

4)SpringMVC常用接口解析:

    1.DispatcherServlet

    DispatcherServlet 是前端控制器,从图 1 可以看出,Spring MVC 的所有请求都要经过 DispatcherServlet 来统一分发。DispatcherServlet 相当于一个转发器或中央处理器,控制整个流程的执行,对各个组件进行统一调度,以降低组件之间的耦合性,有利于组件之间的拓展。

    2.HandlerMapping

    HandlerMapping 是处理器映射器,其作用是根据请求的 URL 路径,通过注解或者 XML 配置,寻找匹配的处理器(Handler)信息。

    3.HandlerAdapter

HandlerAdapter 是处理器适配器,其作用是根据映射器找到的处理器(Handler)信息,按照特定规则执行相关的处理器(Handler)。

    4.Handler

    Handler 是处理器,和 Java Servlet 扮演的角色一致。其作用是执行相关的请求处理逻辑,并返回相应的数据和视图信息,将其封装至 ModelAndView 对象中。

    5.View Resolver

    View Resolver 是视图解析器,其作用是进行解析操作,通过 ModelAndView 对象中的 View 信息将逻辑视图名解析成真正的视图 View(如通过一个 JSP 路径返回一个真正的 JSP 页面)。

    6.View

View 是视图,其本身是一个接口,实现类支持不同的 View 类型(JSP、FreeMarker、Excel 等)。

实例:拦截器

<
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.dtcms.com/a/101444.html

相关文章:

  • HarmonyOS 介绍
  • Ubuntu在VMware中无法全屏
  • MIPS-32架构(寄存器堆,指令系统,运算器)
  • 网络空间安全(45)PHP入门学习
  • 电影交流|基于Java+vue的电影交流平台小程序系统(源码+数据库+文档)
  • 封装了一个优雅的iOS全屏侧滑返回工具
  • [蓝桥杯 2023 省 A] 网络稳定性
  • 鸿蒙富文本实践
  • RK3588使用笔记:系统换源
  • 【YOLO系列】基于YOLOv8的无人机野生动物检测
  • 【NLP】14. NLP推理方法详解 --- beam search 束搜索 以及 graph search 图搜索
  • Nginx学习笔记(一)
  • 人工智能图像识别Scala基础
  • Vue2——组件的注册与通信方式、默认插槽、具名插槽、插槽的作用域
  • 数智化时代下开源AI大模型驱动的新型商业生态构建——基于AI智能名片与S2B2C商城小程序的融合创新研究
  • PH热榜 | 2025-03-30
  • 机器学习:人工智能的核心驱动力
  • windows权限提升 win+iss 宝塔bypass Msf进行提取
  • 优秀的 Vue.js 入门开源项目推荐
  • Python第七章01:文件的读取操作
  • AI 强化学习
  • Shell教程
  • 【质量管理】纠正、纠正措施和预防的区别与解决问题的四重境界
  • 移动端六大语言速记:第2部分 - 控制结构
  • SpringBoot实现RBAC权限校验模型
  • 拓展知识六:MetInfo6.0.0目录遍历漏洞原理分析
  • 二分算法到红蓝染色
  • Mybatis的resultMap标签介绍
  • Java面试黄金宝典23
  • 鸿蒙ArkTS开发:微信/系统来电通话监听功能实现