java ee7拦截器与回调

时间:2014-02-11 12:11:52

标签: java java-ee-7

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

1 个答案:

答案 0 :(得分:2)

正如评论中指出的那样,两者的开销可能微不足道,在你真正有一个真正的问题要谈之前不值得担心。

对于事件序列(和其他差异),AroundConstructPostConstruct的javadoc回答了这一点。

必须在拦截器上定义

AroundConstruct,并在最后一个此类拦截器调用proceed上的InvocationContext方法后调用真实构造函数。所以这些技术上会在构造函数之前运行,但是在运行之后你会得到控制权(因此名称" Around"),这样你就可以进行后期处理同样。

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