【问题标题】:Executing AOP when some method is called from specific class从特定类调用某些方法时执行 AOP
【发布时间】:2012-11-01 12:30:18
【问题描述】:

我是 AOP 的新手。当某个类的某些方法被执行时,我可以成功地执行AOP。但是当某个类的某些方法被其他类调用时,我想执行AOP。这种类型的实现在 SpringAOP 或 AspectJ 中是否可行?

例如,我的“A”类具有方法 getA。 我已经成功实现了,“当 getA 执行时,做点什么”。 但我想要“当从类“B”调用 getA 时,做一些事情”。 在 Spring AOP 或 AspectJ 中可以吗?

【问题讨论】:

    标签: java aop aspectj spring-aop


    【解决方案1】:

    当从类“B”调用getA时,做某事“。在Spring AOP或AspectJ中可以吗?

    是的,前提是Class B 中的Class A 对象被注入。这是因为,AOP 是由 spring 使用代理实现的,因此注入的实例将是包装了定义了方面的类的对象的代理。所以,只要你在 spring 管理的 bean 上调用 getA() 方法,连接点就会被执行。

    【讨论】:

    • 如果你不能在 Spring 的 AOP 中做到这一点,你总是可以退后一步,只使用完整的 AspectJ 方面。这会为您提供额外的切入点和连接点。
    猜你喜欢
    • 1970-01-01
    • 2014-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多