gpt4 book ai didi

java - 如何对所有实现 MyInterface 的类应用 ThrowsAdvice

转载 作者:太空宇宙 更新时间:2023-11-04 13:34:00 25 4
gpt4 key购买 nike

我是Spring新手,正在学习AOP。我的要求是我必须为所有实现 MyInterface 的类应用 ThrowsAdvice。我看过很多针对单节课进行解释的教程。但我正在寻找实现 MyInterface 的所有类。我要应用proxyfactorybean target ref =所有接口(interface)实现类

interface  MyInt{
public String a();
public String b();
}

我要申请它的实现类

class Test1 implements MyInt{
public String a(){ return "some val";}
public String b(){ return "some val";}
}


class Test2 implements MyInt{
public String a(){ return "some val";}
public String b(){ return "some val";}
}

他们在许多教程中解释了

<bean id="obj1" class="com.xx.Test1"></bean>  
<bean id="obj2" class="com.xx.Test2"></bean>
<bean id="ba" class="com.yyy.ThrowsAdvisor"></bean>

<bean id="proxy" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="target" ref="obj1"></property>
<property name="interceptorNames">
<list>
<value>ba</value>
</list>
</property>
</bean>

我想为所有实现 MyInt 的类应用 ProxyFactoryBean 目标。

最佳答案

建议MyInt的所有实现类使用target切入点指示符。

建议和切入点应如下所示

@Aspect
public class SomeAfterThrowingAdvice {

@AfterThrowing("target(a.b.c.MyInt)")
public void doSomething() {
// log, recover etc.
}
}

如果您需要任何进一步的信息,请在评论中告知。

P.S.:建议使用最新版本的框架进行学习;这是4.2.0(在撰写本文时)。

关于java - 如何对所有实现 MyInterface 的类应用 ThrowsAdvice,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31875680/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com