SpringMVC-->了解SpringMVC

1、什么是SpringMVC

        SpringMVC又名Spring Web MVC,是一种基于java的实现MVC设计模型的请求驱动类型的轻量级Web框架,属于SpringFrameWork的后续产品

        SpringMVC本质上可以认为是对servlet的封装,简化了对于servlet的开发;SpringMVC通过一套注解,让一个简单Java类成为处理请求的控制器,而无须实现任何接口。同时还支持RESTful编程风格的请求

2、SpringMVC的体系结构

2.1、三层架构

        开发架构一般分为C/S架构(客户端/服务器)和B/S架构(浏览器/服务器),JavaEE的开发中,一般使用B/S架构。B/S架构中系统标准的三层架构包括:表现层、业务层、持久层;这三层架构中,每层都各司其职

2.1.1、表现层

  • 表现层也就是我们所说的Web层。负责接受客户端请求,向客户端响应结果,通常客户端使用 http协议请求web层,web需要接收http请求,完成http响应   
  • 表现层包括展示层和控制层:控制层负责接收请求,展示层负责结果的展示。
  • 表现层依赖业务层,接收到客户端请求⼀般会调⽤业务层进⾏业务处理,并将处理结果响应给客户端。
  • 表现层的设计⼀般都使⽤ MVC 模型。(MVC 是表现层的设计模型,和其他层没有关系)

2.1.2、业务层

  • 业务层也就是我们所说的Service层
  • 负责业务逻辑处理,和我们开发项⽬的需求息息相关。
  • web 层依赖业 务层,但是业务层不依赖 web 层。
  • 业务层在业务处理时可能会依赖持久层,如果要对数据持久化需要保证事务⼀致性。(也就是我们说 的, 事务应该放到业务层来控制) 

2.1.3、持久层

  • 也就是我们所说的Dao层
  • 负责数据持久化,包括数据层即数据库和数据访问层,数据库是对数据进 ⾏持久化的载体,数据访问层是业务层和持久层交互的接⼝,业务层需要通过数据访问层将数据持久化 到数据库中。通俗的讲,持久层就是和数据库交互,对数据库表进⾏增删改查的。

2.2、MVC设计模式

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller) 的缩写, 是⼀ 种⽤于设计创建 Web 应⽤程序表现层的模式。MVC 中每个部分各司其职:

  • 模型(model) :模型包含业务模型和数据模型,数据模型⽤于封装数据,业务模型⽤于处理业 务。
  • View(视图): 通常指的就是我们的 jsp 或者 html。作⽤⼀般就是展示数据的。通常视图是依据 模型数据创建的。
  • Controller(控制器): 是应⽤程序中处理⽤户交互的部分。作⽤⼀般就是处理程序逻辑的。 MVC提倡:每⼀层只编写⾃⼰的东⻄,不编写任何其他的代码;分层是为了解耦,解耦是为了维 护⽅便和分⼯协作。

3、SpringMVC工作流程

3.1、工作流程说明

  • 第⼀步:⽤户发送请求⾄前端控制器DispatcherServlet
  • 第⼆步:DispatcherServlet收到请求调⽤HandlerMapping处理器映射器
  • 第三步:处理器映射器根据请求Url找到具体的Handler(后端控制器),⽣成处理器对象及处理器拦截 器(如果 有则⽣成)⼀并返回DispatcherServlet
  • 第四步:DispatcherServlet调⽤HandlerAdapter处理器适配器去调⽤Handler
  • 第五步:处理器适配器执⾏Handler
  • 第六步:Handler执⾏完成给处理器适配器返回ModelAndView
  • 第七步:处理器适配器向前端控制器返回 ModelAndView,ModelAndView 是SpringMVC 框架的⼀个 底层对 象,包括 Model 和 View
  • 第⼋步:前端控制器请求视图解析器去进⾏视图解析,根据逻辑视图名来解析真正的视图。
  • 第九步:视图解析器向前端控制器返回View
  • 第⼗步:前端控制器进⾏视图渲染,就是将模型数据(在 ModelAndView 对象中)填充到 request 域
  • 第⼗⼀步:前端控制器向⽤户响应结果
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值