Spring框架

Spring框架

  • Spring框架是一个为java应用程序的开发提供综合,广泛的基础性支持的java平台
  • 集成的主要模块有:核心容器,数据访问/集成,Web,AOP(面向切面编程),工具,消息和测试模块

Spring核心

  • IOC(Inversion of Control 控制反转):资源不再由使用资源双方进行管理,而是由不使用资源的第三方统一管理,
    • 这样的好处有,第一资源的集中管理,实现资源的可配置和易管理
    • 降低了使用资源双方的依赖程度,即降低耦合
  • AOP(Aspect Oriented Programming 面向切面编程):OOP面向对象编程针对业务处理过程的实体及其属性和行为进行封装。但如果在开发过程中,如果产生横切性问题,比如日志记录,权限验证,监控性能,这时候AOP就上场了,AOP是通过预编译或者运行期动态代理实现的,
    • 对业务逻辑的各个部分进行隔离,使得业务逻辑各部分之间耦合性降低,提高程序可重用性

Spring MVC

  • 基于java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,COntroller分离,将Web应用分成逻辑清晰的几个部分,简化开发。
  • 核心思想是业务数据抽取和业务数据呈现相分离
  • Model是业务数据
  • View是为用户呈现的页面
  • Controller调用业务逻辑产生合适的数据(Model),同时传递数据Model给视图层(View)呈现给用户
  • Model对象负责在数据库1中存取数据
  • controller控制器负责从视图读取数据,控制用户输入,并向1模型发送数据

SpringMVC核心组件:

  • DispatcherServlet:前端控制器
    • 作用:用户将请求交给DispatcherServlet,由他调用其他组件处理用户请求,分发到具体的Controller
    • 从而获取需要的业务数据Model,Model再通过DispatcherServlet传递给View完成页面呈现
    • DispatcherServlet的存在降低了组件之间的耦合
  • HanderMapping:处理映射器
    • 根据请求的URL,找到对应的处理器Hander
    • Spring提供多种不同映射器实现不同的映射方式。比如:配置文件方式,实现接口方式,注解方式
  • HanderAdapter:处理器适配器
    • 将各种Controller适配成为DispatcherServlet可以使用的Handler:处理器(需要工程师开发)
    • 编写Handler需要根据HandlerAdapter的要求去做,这样HandlerAdapter才能正确执行
    • Handler是继HandlerAdapter前端控制器的后台控制器,在DispatcherServlet控制下对用户请求进行处理
  • ViewResolver:视图解析器
    • 首先根据逻辑视图名解析成具体的页面地址
    • 然后对View进行渲染,将处理结果通过页面展示给用户
  • View:视图(需要工程师开发jsp,html)
    • View是一个接口,他的实现类支持不同类型(jsp,html,freemarker)
      在这里插入图片描述

SpringMVC流程

  1. 用户发请求给前端控制器DispatcherServlet
  2. DIspatcherServlet收到请求后,调用HanderMapping处理器映射,请求获取Handle
  3. 处理器映射器根据请求URL找到具体处理器,生成处理器对象及处理器拦截器一并返回给DispatcherServlet
  4. DispatcherServlet调用HandlerAdapter处理器适配器
  5. HandlerAdapter经过适配,调用具体处理器(Handler)
  6. Handler执行完成返回ModelAndView
  7. HandlerAdapter将Handler执行结果ModelAndView返回给DispatcherServlet
  8. DispatcherServlet将ModelAndView传递给ViewResolver视图解析器进行解析
  9. ViewResolver解析后返回具体View
    10.DispatcherServlet对View进行渲染视图(即将模型数据填充至试图)
    DispatcherServlet响应用户
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值