• 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() {
            ..........
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    @PostConstruct

    介绍链接
    PostConstruct

  • 相关阅读:
    快速上手Linux基础开发工具
    Git学习笔记
    SpringMVC处理请求流程
    flink-cdc实时增量同步mysql数据到hbase
    JVM架构和内存管理优化
    Mysql-库的操作
    git的基础操作
    MySql数据是如何存储在磁盘上存储的?
    LeetCode216. Combination Sum III
    java-php-python-基于vue框架的疫情防控知识在线答题系统设计与实现计算机毕业设计
  • 原文地址:https://blog.csdn.net/weixin_44131922/article/details/127441433