【发布时间】:2018-12-13 14:16:09
【问题描述】:
在我的应用程序中,我在控制器和 DAO 层上使用 AOP - 它可以正常工作。
但是,在我的服务层上,它是在 @Configuration 类(作为 bean)中创建的,它不起作用。
所以我的问题是控制器和 DAO 层的切入点和建议有效 - 但不适用于服务层。
在互联网上阅读 - 我发现我应该添加 @EnableAspectJAutoProxy 注释 - 但它仍然不适用于此。
旁注:
@Bean("nameOfResolver")
@Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE, proxyMode = ScopedProxyMode.TARGET_CLASS)
不起作用的类是这样的
public class ResolveImpl implements Resolve {
private static final Logger LOGGER = LoggerFactory.getLogger(ResolveImpl.class);
@CustomAnnotation(user = "user")
public TestClass createTestClass(String user) {
......
}
}
我的 bean 中有这个,它解析应该返回哪个 bean。
非常感谢您的帮助
【问题讨论】:
-
在服务层显示它不起作用的类
-
我已编辑帖子以显示服务层(已更改名称)
-
你在课堂上添加了
@Service吗? Spring 是如何管理的? -
我已将@Service 添加到服务类的接口,但仍然是同样的问题。它由定义 bean 并将其返回到资源层中的“Autowired”的配置类管理。
-
应该在实现类
ResolveImpl,见stackoverflow.com/questions/16351780/…
标签: spring configuration aop spring-aop