AOP
Posted tsugar
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AOP相关的知识,希望对你有一定的参考价值。
AOP 面向切面编程
AOP的功能是基于IOC的功能之上,所有我们必须先引用IOC的的全部jar包
AOP和aspects是构成AOP的基础,所以必须得引入两个jar包
<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.2.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-aspects -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>4.3.25.RELEASE</version>
</dependency>
AOP为了解决代码重用的问题
在方法的前面或者后面切入一段代码
1.切面 一个普通的类,任何的类都可以变成一个切面
2.切入点 切入点
3.关注点 目标 将这段代码切入到哪个地方去 可以是一个具体的方法 也可以是一个类中的全部方法 也可以是一个包中的所有类
4.切入方式 可以在前面加一个 也可以在后面加一个 可以在前后加多个切入点
5.注解 启用注解的功能 applicationcontext.xml
<aop:aspectj-autoproxy></aop:aspectj-autoproxy>
@Component
@Aspect
切入点表达式
* 返回值类型
* 表示一层
.* 表示多层
.. 表示任意多个参数
AOP编程 一般在开发过程 只用在三个场合
1.打日志
2.事务处理
3.读写分离
以上是关于AOP的主要内容,如果未能解决你的问题,请参考以下文章
阿里四面:你知道Spring AOP创建Proxy的过程吗?