学习笔记(05):轻松搞定Spring全家桶(初识篇)-面向切片编程AOP:

一、AOP简介:
    AOP(Aspect Oriented Programming)面向切面编程,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等待。能在不改变原有的逻辑的基础上,增加一些额外的功能。简单说就是将那些与业务无关,却为业务模块所共同调用的逻辑或责任封装起来,便于减少系统的重复代码,降低模块之间的耦合度,并有利于未来的可操作性和可维护性。
二、AOP的一些术语和概念:

  1. Aspect(切面):通常是一个类,里面可以定义切入点和通知
  2. Proxy(代理):将通知应用到目标对象后创建的对象,代理就是目标对象的加强。Spring中的AOP代理可以使JDK动态代理,也可以是CGLIB代理,前者基于接口,后者基于子类
  3. JointPoint(连接点):程序执行过程中插入切面的点,是对象操作过程中的某个阶段点,一般是方法的调用。被拦截到的点,因为Spring只支持方法类型的连接点,所以在Spring中连接点指的就是被拦截到的方法,实际上连接点还可以是字段或者构造器
  4. Pointcut(切入点):就是连接点的集合切面与程序流的交叉点及程序的切入点,准确的说就是切面注入到程序中的位置,在程序中主要体现为书写切入点表达式
  5. Advice(通知):在切面某个特定的连接点上执行的动作,spring有5种类型MethodBeforeAdvice(前置),AfterReturningAdvice(后置),MethodInterceptor(环绕:前后皆有),ThrowsAdvice(异常),IntroductionInterceptor(引介通知:在目标类中增加一些新的方法和属性)
  6. 目标对象(Target Object): 包含连接点的对象。也被称作被通知或被代理对象。可以是编写的类也可以是需要添加指定行为额的第三方类。
  7. weaving(织入):将切面应用到目标对象并创建一个被通知的对象的过程。三种方式,编译期织入(静态代理)、类加载器织入、运行期织入。

三、案例
(点击下方链接即可跳转,正在补充中。。。)

  1. 使用Spring通知类型创建Spring AOP
      需要的jar包:spring-aop
    以下两个案例需要的jar:spring-aopspring-aspects、com.springsource.org.aspectj.weaver
  2. 使用AspectJ开发AOP - XML
  3. 使用AspectJ开发AOP - Annotation
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值