Има много начини да го направите. Първият:
-
DataSource е интерфейс, така че защо не го внедрите сами (използвайте прокси модел)? Създайте нещо подобно:
class MyDataSource implements DataSource { private DataSource realDataSource; public Connection getConnection() { Connection c = realDataSource.getConnection(); // do whatever you want to do and return c; } }
Всички други методи ще делегират директно на realDataSource.
Този прокси може да се използва в предоставен кодов фрагмент.
-
Можете да използвате някои AOP - просто дайте съвет, който след създаване на връзка за получаване ще се стартира и ще направи каквото ви трябва там. По принцип това е същият прокси, но автоматично създаден от Spring.