在 ejb-jar.xml 文件中声明的 EJB 拦截器与在 beans.xml 文件中声明的 CDI 拦截器之间有什么区别吗?
两个拦截器都使用注释@Interceptors 声明。如果 CDI 拦截器也适用于 EJB,那么为什么会存在 EJB 拦截器?
最佳答案
你是对的,它们基本上是一样的,但 CDI 拦截器更复杂一点——它们包含例如拦截器绑定(bind)。请参阅 Weld documentation 以供引用。请注意, future 可能会努力将 EJB 和 CDI 结合起来(例如,CDI 1.1 允许您使用 JTA 声明性事务,它有效地取代了 EJB 事务),因此我预计这两个项目将在 future 几年合并。
关于java - EJB 拦截器与 CDI 拦截器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21719571/