Spring概述

Spring概述

spring的核心,IOC(Inversion of Control)——控制反转

IOC,对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系。是由spring来负责控制对象的生命周期和对象间的关系。Spring的开发方式就是将所有的类在spring容器中登记, 告诉spring你是个什么东西,你需要什么东西,然后spring会在系统运行到适当的时候,把你要的东西主动给你,同时也把你交给其他需要你 的东西。所有的类的创建、销毁都由 spring来控制,也就是说控制对象生存周期的不再是引用它的对象,而是spring。对于某个具体的对象而言,以前是它控制其他对象,现在是所有对象 都被spring控制,所以这叫控制反转。

DI(Dependency Injection)——依赖注入

Spring核心IoC的一个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象。这一点是通过DI(Dependency Injection,依赖注入)来实现的。spring就是通过 反射来实现注入,允许程序在运行的时候动态的生成对象、执行对象的方法、改变对象的属性

依赖注入(DI)和控制反转(IOC)是从不同的角度的描述的同一件事情,指就是通过引入IOC容器,利用依赖关系注入的方式,实现对象之间的解耦。

AOP(Aspect Oriented Programming)——面向切面编程

AOP一般适用于具有横切逻辑的场合,如事务管理、访问控制、性能监控等
在业务系统中,总有一些散落、渗透到系统各处且不得不处理的事情,这些穿插在既定业务中的操作就是所谓的“横切逻辑”,也称为切面。面向切面编程,简单地说就是在不改变源程序的基础上为代码段增加新的功能,对代码段进行增强处理。

AOP的基本概念:

  1. 切面:一个模块化的横切逻辑(也称横切关注点),可能会横切多个对象。(可以理解为由增强处理和切入点组成,既包含了横切逻辑的定义,又包含了连接点的定义。)

  2. 连接点:程序执行中的某个具体执行点。如上例中原对象(非代理对象)的方法。

  3. 增强处理:切面在某个特定连接点上执行的代码逻辑。

  4. 切入点:对连接点的特征进行描述,可使用正则表达式,类似于Servlet的url-pattern,用于匹配连接点(方法)。增强处理与一个切入点表达式相关联,并在与这个切入点匹配的某个连接点运行。

  5. 目标对象:被一个或多个切面增强的对象。

  6. AOP代理:由AOP所创建的对象,实现执行增强处理方法等功能。

  7. 织入:将增强处理连接到应用程序中的类型或对象上的过程,叫织入。

  8. 增强处理类型:在原对象的方法连接点之前插入的增强处理叫前置增强,在其之后的叫后置增强。此外还要环绕增强、异常抛出增强、最终增强等类型。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值