在目标类中定义生命周期拦截方法

时间:2013-12-08 19:40:46

标签: java java-ee ejb interceptor

我正在阅读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

1 个答案:

答案 0 :(得分:0)

从同一个教程(重点是我的):

  

@PostCreate 注释用于将方法指定为   创建后生命周期事件拦截器 @PreDestroy 注释用于将方法指定为预破坏生命周期   事件拦截器

因此,本教程将使用@PostCreate@PreDestroy注释注释的方法视为生命周期拦截器。实际上它们是。

其他信息

生命周期回调方法可以被视为拦截器,因为EJB container在某些生命周期事件之前或之后调用(注入)它们。 Stateless bean可以有Pre-destructionPost-construction个回调,而stateful个bean除了这两个之外,还可以有ActivationPassivation个回调。

可以在this tutorial中找到EJB 3.0回调的列表。