一个方法必须被指定做为session beans或message driven bean一个周期回调拦截器方法来接收周期事件的通知.周期回调拦截器方法用PostConstructm,PreDestroy,PostActivate或者PrePassivate等标志符来标志.
一个拦截器类可以被使用来代替直接把回调方法定义在拦截器中的方法.
在bean类或者在拦截器类中的通过用元数据标志或者部署描述符为bean类进行静态地配置周期回调方法.
在bean中定义的周期回调函数有以下特性:
public void <Method>{}
在拦截器中的周期回调函数有以下特性
public void <Method>(InvocationContext)
业务方法的拦截器方法可以为session bean的业务方法和message-driven bean的消息监听方法定义.业务方法的拦截器方法是用AroundInvoke标志来表示.在bean中或者在任何一个给定的拦截器类中,只有一个AroundInvoke方法可以被表示.一个AroundInvoke方法不一定是一个业务方法.
业务方法的调用被bean中或拦截器类中的AroundInvoke方法调用.AroundInvoke方法总是会调用InvocationContect.proceed()方法或者业务方法和任何并发的拦截器AroundInvoke都不会被调用.
AroundInvoke方法有以下特性:
public object<Method> (InvocationContext) throws Exception
InvocationContext提供了拦截器方法所需要的元数据.