Hook JDBC Connection.Close()方法

Hook JDBC Connection.Close()方法,jdbc,connection,hook,Jdbc,Connection,Hook,我需要钩住excisting类方法并做一些日志记录。这些类被编写并作为jar放置在应用程序中。下面是我的场景中的一个典型示例 我们打开一个连接(java.sql.connection),并在所有DB操作完成后关闭该连接。这里我想要的是在每次调用Connection.close()方法时调用一个自定义方法。我无法为连接创建自定义类,因为在项目中,这方面的代码更改将非常巨大 有没有一种方法可以钩住关闭方法。可以在Java中钩住方法吗 谢谢你的帮助。!谢谢 有几种方法: 调用close()时,使用并

我需要钩住excisting类方法并做一些日志记录。这些类被编写并作为jar放置在应用程序中。下面是我的场景中的一个典型示例

  • 我们打开一个连接(java.sql.connection),并在所有DB操作完成后关闭该连接。这里我想要的是在每次调用Connection.close()方法时调用一个自定义方法。我无法为连接创建自定义类,因为在项目中,这方面的代码更改将非常巨大 有没有一种方法可以钩住关闭方法。可以在Java中钩住方法吗


    谢谢你的帮助。!谢谢

    有几种方法:

    • 调用
      close()
      时,使用并让InvocationHandler执行其他操作
    • 编写一个扩展
      连接的包装(本质上与代理相同,只是您必须自己实现所有方法并将它们链接到包含的连接)
    • 我从未使用过它,但我相信AspectJ允许您使用

    编写了一个扩展java.sql.Connection类的包装器类,并实现了所有调用Super class方法的方法。