Java @PreDestroy 注解的使用

介绍

@PreDestroy@PostConstruct 相对应

@PostConstruct 用于初始化动作,功能类似代码块或静态代码块
@PreDestroy 与 @PostConstruct 相反,为程序环境整体结束前执行的动作

源码给出的注释说明如下:
PreDestroy注释在方法上用作回调通知,以表示实例正在被容器移除。带有PreDestroy注释的方法通常用于释放它一直持有的资源。除了Java EE 5中的应用程序客户端容器之外,所有支持PostConstruct*的容器管理对象都必须支持此注释

该方法不能有任何参数,除非是在拦截器的情况下,在这种情况下,它采用了拦截器规范定义的InvocationContext对象

PreDestroy拦截器方法不能抛出application异常,但如果同一拦截器除生命周期事件外,还插入了业务或超时方法,则可以声明它抛出已检查的异常,包括 java.lang.Exception。如果 PreDestroy拦截器方法返回值,则容器将忽略该值。

应用PreDestroy的方法可以是public、protected、package private 或 private。
该方法不能是静态的 (即 static)。
可能是 final。
如果该方法抛出一个未检查的异常,它将被忽略,但EJB可以处理异常的情况除外。

使用总结

即,使用该注解时,带有此注解的方法没有返回值以及入参,如果有异常抛出会被忽略
配套使用时类似如下:

	@PostConstruct
    public void initMethod1() {
        ........
    }

    @PreDestroy
    public void destroyMethod1() {
        ..........
    }

@PostConstruct

介绍链接
PostConstruct

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值