我正在阅读java ee tutorial中关于拦截器的部分,并指出:"Interceptors for lifecycle callback events (post-create and pre-destroy) may be defined in the target class or in interceptor classes."
我的问题是我们如何在目标类中定义lifecycle intercepting callback methods
,因为相关的注释(@PostConstruct
,@PreDestroy
等)只定义了相应的lifecycle methods
。怎么能我们同时将它们定义为intercepting methods
?
答案 0 :(得分:0)
从同一个教程(重点是我的):
@PostCreate 注释用于将方法指定为 创建后生命周期事件拦截器。 @PreDestroy 注释用于将方法指定为预破坏生命周期 事件拦截器。
因此,本教程将使用@PostCreate
和@PreDestroy
注释注释的方法视为生命周期拦截器。实际上它们是。
其他信息
生命周期回调方法可以被视为拦截器,因为EJB container
在某些生命周期事件之前或之后调用(注入)它们。 Stateless
bean可以有Pre-destruction
和Post-construction
个回调,而stateful
个bean除了这两个之外,还可以有Activation
和Passivation
个回调。
可以在this tutorial中找到EJB 3.0
回调的列表。