我想在java方法上添加一个侦听器,我看到了注释@Interceptors和@AroundInvoke。我想在一个经典的java项目中使用它,但是所有的教程都向我展示了Java EE项目。
有可能吗?
发布于 2014-12-03 18:10:30
我不这么认为,这些是由Java容器管理的。一种简单的方法是在类的所有实例上创建一个代理/包装器。或者使用Spring AOP (但您必须配置Spring)或AspectJ。看看这个:http://www.javacodegeeks.com/2012/06/simple-introduction-to-aop.html
发布于 2014-12-03 18:22:04
拦截器是一个基于面向方面编程( AOP )的依赖注入( DI )概念。
从Java-ee6开始,您就有了一个名为CDI的轻量级DI容器。如果您提供了一个允许像jboss weld这样的独立部署的实现,那么您可以在java-se上下文中使用CDI:
请参阅Is it possible to use javax.interceptor in a Java SE environment?
否则,您可以使用spring,它也提供了具有相同特性的轻量级DI容器,并且可能更适合于java-se上下文使用。
发布于 2014-12-03 18:10:38
在这里阅读文档:https://docs.oracle.com/javaee/6/tutorial/doc/gkigq.html
拦截器与Java托管类结合使用,以允许开发人员结合方法调用或生命周期事件调用关联目标类上的拦截器方法。
所以我猜你的问题的答案是否定的。
https://stackoverflow.com/questions/27268698
复制相似问题