• Spring简介及IOC易懂介绍


    • 目录

      Spring是什么

      Spring体系结构

      Spring优势

      耦合与内聚

      工厂模式发展史

      IOC


    • Spring是什么

    • Spring是分层的JavaSE/EE应用 full-stack(一站式)轻量级开源框架
    • 分层架构允许使用者选择使用哪一个组件
    • Spring的用途不仅限于服务器端的开发,任何Java应用都可以从Spring中受益
    • Spring体系结构

    • 底层是核心容器
    • Spring的核心容器是其他模块建立的基础
    • 由Spring-core
    • Spring-beans
    • Spring-context
    • Spring-context-support和Spring-expression(Spring表达式语言)等模块组成
    • 中间层技术
    • AOP
    • Aspects
    • 应用层技术
    • 数据访问与数据集成
    • Web集成
    • Web实现
    • 基于Test测试
    • Spring优势

    • 方便解耦,简化开发
    • 方便集成各种优先框架
    • 方便程序的测试
    • AOP编程的支持
    • 声明式事务的支持
    • 降低JavaEE API的使用难度
    • Java源码是经典学习范例
    • 耦合与内聚

    • 耦合(Coupling):
    • 代码书写过程中所使用技术的结合紧密度
    • 用于衡量软件中各个模块之间的互联程度
    • 耦合度越高互联度越高
    • 内聚(Cohesion):
    • 代码书写过程中单个模块内部各组成部分间的联系
    • 用于衡量软件中各个功能模块内部的功能联系
    • 程序书写的目标:高内聚,低耦合
    • 就是同一个模块内的各个元素之间要高度紧密
    • 但是各个模块之间的相互依存度却不要那么紧密
    • 工厂模式发展史

    • 第一阶段:
    • 应用程序(UserServiceImpl)
    • 通过new调用
    • 资源(UserDaoImpl)
    • 应用与资源紧耦合
    • 变更实现必须修改调用方源代码
    • 第二阶段:
    • 多了个工厂(UserDaoFactory)
    • 工厂与资源紧耦合
    • 应用与资源断开耦合
    • 变更实现无须修改调用方源代码,但是需要修改工厂代码
    • 第三阶段:
    • 多了个配置(resource.xml)
    • 工厂通过读取配置文件,读取类名,利用反射创建对象
    • 资源与工厂也断开耦合
    • 资源与配置文件紧耦合
    • 变更实现无须修改调用方代码,也无需修改工厂代码,仅需要修改配置文件
    • 这样维护成本很小
    • 使用工厂+配置的形式,这就是Spring雏形
    • IOC

    • 不理解看前面的耦合与内聚,工厂模式发展史,那些是铺垫
    • IOC(Inversion Of Control)控制反转
    • Spring反向控制应用程序所需要使用的外部资源
    • 对象A获得依赖对象B的过程,由主动行为变为了被动行为
    • 控制权颠倒过来了,这就是“控制反转”这个名称的由来
    • Spring控制的资源全部放置在Spring容器中,该容器称为IOC容器
    • 传统模式下,资源的主控权在类手中
    • IOC模式下,主控权则在Spring手中
  • 相关阅读:
    Cerebral Cortex:疼痛热刺激引起的脑功能网络分离与整合
    微信小程序 - 入门篇
    超实用!五种常用的多离散化小技巧
    ERP升级的另一种选择,MES系统
    购买密封件时应注意哪些要点?
    Linu文件目录之操作篇【文件/目录的删除和创建、复制、移动、重命名】【简直不要太详细】
    【C++学习第三讲】C++语句
    【TypeScript】掌握 TypeScript 这些官方工具类型
    BGP拓展特性实验
    嵌入式工程师面试题-RTOS_Linux
  • 原文地址:https://blog.csdn.net/weixin_59624686/article/details/126321005