@Service
public class TestService{
@Dynamicreference
private ITestProvider testProvider;
public void run() {
}
}
Dynamicreference dynamicrefrence = filed.getannotation(Dynamicreference.class);
-->NOT NULL
在这种情况下,此代码很好。但是,当我在方法运行中添加@Transactional
时,@Dynamicreference
将丢失
@Service
public class TestService{
@Dynamicreference
private ITestProvider testProvider;
@Transactional
public void run() {
}
}
Dynamicreference dynamicrefrence = filed.getannotation(Dynamicreference.class);
-->NULL
如何在cglib代理类中获取字段注释@Dynamicreference
?
这是获取域代码:
Object o = this.applicationContext.getBean(beanName);
Class<?> clazz = o.getclass();
for (Field filed : clazz.getDeclaredFields()) {
Dynamicreference dynamicrefrence = filed.getannotation(Dynamicreference.class);
}