study1 Ioc&DI和Spring框架概述(Spring学习记录整理——咖喱鸡肉包)

目录

面向对象回顾和案例

案例

IoC和DI

IoC和DI的概念

DI的实现

Spring框架介绍

Spring框架实现IoC

Spring示例:

Spring示例编码步骤:


  • 面向对象回顾和案例

    • 案例

      • 报表功能:
        • 报表服务器,检索数据,并生成图表。
        • 报表生成器类,生成不同格式的报表文件,例如PDF格式、Html格式
        • 实现一:以面向对象的方式实现Demo。
        • 实现二:分离接口和实现。
          • 优化目标:消除ReportService到ReportGenerator实现类之间的依赖关系
        • 实现三:采用容器:
          • 增加容器类:Container。
          • 所有组件由Container类管理。
        • 实现四:使用服务定位器
          • 服务定位器:ServiceLocator类:
            • 封装查找逻辑
            • 对外公开查找组件(Generator)的方法
  • IoCDI

    • IoC和DI的概念

      • IoC(Inversion of Control,控制反转):
        • 设计原则,解耦组件之间的依赖关系
      • DI(Dependency Injection,依赖注入):
        • 具体的设计模式,体现了IoC的设计原则。
        • 因为DI是IoC最典型的实现,所以术语IoC与DI经常被混用
      • 应用IoC:
        • 好的获取资源的解决方案
        • 由容器主动将资源推送到它所管理的组件里,组件要有接受资源的方式
        • 查找的被动形式
        • 好莱坞原则
    • DI的实现

      • 实现五:
        • 不需要服务定位器:
          • 组件(ReportService)增加接受资源的方法(setter)
          • 由容器将组件(ReportGenerator)注入到另一个组件(ReportService)
        • 优点:完全面向接口
      • 不同类型的依赖注入(D):
        • 三种主要类型
          • 接口注入
          • setter注入
          • 构造器注入
        • 流行程度最广:setter注入
          • 有可能忘记注入,会抛出空指针
          • 代码安全有可能存在问题,依赖会被修改
        • 构造器注入:
          • 可避免setter注入发一些缺点
          • 没有含义明确的方法名,对参数位置和数量由要求
  • Spring框架介绍

    • 一些背景、发展介绍

  • Spring框架实现IoC

    • Spring示例:

      • Spring提供了IoC容器
      • Beans均由SpringIoC容器来管理和组装
    • Spring示例编码步骤:

      • 导入Spring相关Jar文件
      • 配置元数据
      • Bean是一个由SpringIoC容器进行实例化、装配和管理的对象。
      • Beans以及他们之间的依赖关系是通过容器使用配置元数据反映出来
      • 配置元数据
        • 基于Xml的配置
        • 基于注解的配置
        • 基于Java的配置
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黑眼圈子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值
>