java ee7 拦截器与回调

标签 java java-ee-7

拦截器和回调有什么区别? 我可以互换使用 @AroundConstruct 和 @PostConstruct 吗?它们总是(或多或少)同时涉及吗?

最佳答案

正如评论中所指出的,两者的开销可能都可以忽略不计,并且在您确实有真正的问题要讨论之前不值得担心。

至于事件的顺序(以及其他差异),AroundConstruct 的 javadocs和PostConstruct回答这个问题。

AroundConstruct 必须在拦截器上定义,并且在最后一个此类拦截器调用 InitationContext 上的 proceed 方法后调用真正的构造函数。因此,从技术上讲,这些将在构造函数之前运行,但在运行后您将获得控制权(因此名称为“Around”),因此您也可以进行后处理。

PostConstruct 可以在拦截器或任何对象本身没有参数的 void 方法上定义。它在容器完成依赖项注入(inject)后调用(因此名称为“Post”)。

关于java ee7 拦截器与回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21701511/

相关文章:

Java EE 7 Batch API - MultiResourceItemReader 对应项

java - 是否可以访问EJB中的文件系统?

java - 同步外部对HashMap的访问

Java OpenGL GL_TEXTURE_2D 使其他颜色变暗

java - 如何使用 Jackson 将其序列化为 xml?

java - TomEE CDI @Inject NullPointerException

jakarta-ee - Java EE 世界中是否有 SpringBatch 的等价物?

java - 如何使用spring数据从mongo集合中仅获取指定的对象类

java - 按开始位置到结束位置将android中的视频切片

jsf - 与 JSF 2.2 及更高版本一起使用的 XML 命名空间