古道长亭

Contact me with ixiaoqiang0011@gmail.com


  • 首页

  • 归档

  • 分类

  • 关于

  • Book

  • 搜索

Spring 核心思想

时间: 2022-10-02   |   分类: Spring   | 字数: 708 字 | 阅读约: 2分钟 | 阅读次数:

Spring 核心思想

注意:IOC和AOP不是spring提出的,在spring之前就已经存在,只不过更偏向于理论化,spring在技

术层次把这两个思想做了⾮常好的实现(Java)

一、ioc

1.什么是ioc

IoC Inversion of Control (控制反转/反转控制),注意它是⼀个技术思想,不是⼀个技术实现

描述的事情:Java开发领域对象的创建,管理的问题

传统开发⽅式:⽐如类A依赖于类B,往往会在类A中new⼀个B的对象

IoC思想下开发⽅式:我们不⽤⾃⼰去new对象了,⽽是由IoC容器(Spring框架)去帮助我们实例化对

象并且管理它,我们需要使⽤哪个对象,去问IoC容器要即可

我们丧失了⼀个权利(创建、管理对象的权利),得到了⼀个福利(不⽤考虑对象的创建、管理等⼀系列

事情)

为什么叫做控制反转?

控制:指的是对象创建(实例化、管理)的权利

反转:控制权交给外部环境了(spring框架、IoC容器)

img

2.解决了什么问题

IoC解决对象之间的耦合问题

3.ioc和di的区别

ioc和di描述的是同一件事情,只不过角度不同

Ioc:对象的角度,指实现化及管理权交给了容器

di:容器的角度,容器会把对象依赖的对象注入

二、aop

1.什么是aop

AOP: Aspect oriented Programming ⾯向切⾯编程/⾯向⽅⾯编程

AOP是OOP的延续

OOP三⼤特征:封装、继承和多态

oop是⼀种垂直继承体系

2.aop解决什么问题

在不改变原有业务逻辑情况下,增强横切逻辑代码,根本上解耦合,避免横切逻辑代码重复

3.为什么叫做切面编程

「切」:指的是横切逻辑,原有业务逻辑代码我们不能动,只能操作横切逻辑代码,所以⾯向横切逻辑

「⾯」:横切逻辑代码往往要影响的是很多个⽅法,每⼀个⽅法都如同⼀个点,多个点构成⾯,有⼀个

⾯的概念在⾥⾯

#Spring#
QQ扫一扫交流

标题:Spring 核心思想

作者:古道长亭

声明: 欢迎加群交流!

如有帮助,欢迎多多交流 ^_^

微信打赏

支付宝打赏

手写Ioc和Aop
分布式理论
  • 文章目录
  • 站点概览
古道长亭

古道长亭

Always remember that your present situation is not your final destination. The best is yet to come.

226 日志
57 分类
104 标签
GitHub Gitee
友情链接
  • 古道长亭的BOOK
  • JAVA学习
标签云
  • Mysql
  • 搜索引擎
  • Mybatis
  • 容器
  • 架构
  • 消息队列
  • Flink
  • Sharding sphere
  • 流处理
  • 缓存
  • 一、ioc
    • 1.什么是ioc
    • 2.解决了什么问题
    • 3.ioc和di的区别
  • 二、aop
    • 1.什么是aop
    • 2.aop解决什么问题
    • 3.为什么叫做切面编程
© 2019 - 2024 京ICP备19012088号-1
0%