我是 spring aop 的初学者,我正在阅读 spring aop 文档来理解这些概念,但未能理解“目标对象”。
文档说目标对象是“一个或多个方面建议的对象。也称为建议对象”.
这里的being advised by one or more aspect是什么意思?谁能用莱曼术语向我解释什么是目标对象,因为我还是个初学者。
一些基本AOP术语的简单解释请参考我的其他答案。在继续阅读这里之前,请先阅读那个。
所以目标对象是您想要添加新行为的(Java或Spring)组件,通常是横切关注点,即一些行为将应用于代码库中的许多类。
一个 方面 是一个类,您可以在其中实现横切关注点,并确定在何处以及如何应用它。 where 由 pointcut 定义,这是一种搜索表达式,用于查找代码库的相关部分以应用行为。 how 在称为 advice 的方面方法中实现。
所以当我们说一个方面建议一个对象时,它意味着它在不改变类本身的情况下为其添加(横切)行为。
是否可以像下面这样定义多个目标:
@Before(value = "com.test.createUpdateDeletePointCut() && (target(com.testlab.A) || target(com.testlab.B))")