软件包  javax.annotation

Annotation Type PostConstruct



  • @Documented
    @Retention(RUNTIME)
    @Target(METHOD)
    public @interface PostConstruct
    PostConstruct注释用于需要执行相关性注入后执行任何初始化的方法。 必须在该类投入使用之前调用此方法。 必须在支持依赖注入的所有类上支持此注释。 即使该类不请求任何注入的资源,也必须调用PostConstruct注释的方法。 只有一种方法可以使用此注释进行注释。 应用PostConstruct注释的方法必须满足以下所有条件:
    • 除了拦截器的情况下,该方法必须不具有任何参数,在这种情况下,它将接受由Interceptor规范定义的InvocationContext对象。
    • 在拦截器类上定义的方法必须具有以下签名之一:

      void <METHOD>(InvocationContext)

      Object <METHOD>(InvocationContext)抛出异常

      注意:PostConstruct拦截器方法不能抛出应用程序异常,但是除了生命周期事件之外,如果相同的拦截器方法在业务或超时方法上插入,则它可能被声明为抛出检查的异常,包括java.lang.Exception。 如果PostConstruct拦截器方法返回值,容器将被忽略。

    • 在非拦截器类上定义的方法必须具有以下签名:

      void <METHOD>()

    • PostConstruct应用的方法可以是public,protected,private或private。
    • 除了应用程序客户端,该方法绝对不是静态的。
    • 该方法可能是最终的。
    • 如果该方法抛出一个未经检查的异常,则该类绝不能投入使用,除非EJB可以处理异常甚至从它们恢复。
    从以下版本开始:
    1.6,通用注释1.0
    另请参见:
    PreDestroyResource