Spring - (5) AOP概述

AOP概述

1.是对传统OOP编程的一种补充
2.切面是一个可以自定义的特殊的类,里面封装了一系列横切关注点
3.因为可以设置横切关注点的运行地点和运行方式,所以可以将这些横切关注点统一用一个类管理,这个类就叫做切面,切面负责将横切关注点模块化

优点:

1.将非核心代码写在一个类,核心代码写在一个类,降低耦合性
2.各个模块更加整洁清晰,便于管理

AOP术语

横切关注点: 从每个方法中抽取出来的非核心代码,它和通知的区别就是它不是具体的某个方法,而是从非核心代码分出来的概念,比如日志等。
切面: 一个开发者自定义的类,用于封装横切关注点的类,切面有不同的实现方式,比如AspectJ,两者之间的关系就如同Java虚拟机规范和HotSpot之间的关系
在这里插入图片描述
通知: 切面封装了通知,通知可以看做其内的那些特定的带有某些注解的方法
目标: 被通知的对象
在这里插入图片描述
代理: 切面被初始化后会为该切面对应的bean创建代理
连接点: 程序执行的某个特定位置。
切入点: AOP可以通过切入点定位到特定的连接点。

AspectJ

简介

AspectJ:Java社区里最完整最流行的AOP框架。
在Spring2.0以上版本中,可以使用基于AspectJ注解或基于XML配置的AOP。

在Spring中启用AspectJ注解支持
  1. 导入包
    在这里插入图片描述
    源代码和Javadoc可以不用导入

  2. 引入aop名称空间
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值