Il existe de nombreuses façons de le faire. La première :
-
DataSource est une interface, alors pourquoi ne pas l'implémenter vous-même (utilisez le modèle Proxy) ? Créez quelque chose comme ceci :
class MyDataSource implements DataSource { private DataSource realDataSource; public Connection getConnection() { Connection c = realDataSource.getConnection(); // do whatever you want to do and return c; } }
Toutes les autres méthodes délégueront directement à realDataSource.
Ce proxy peut être utilisé dans un extrait de code fourni.
-
Vous pouvez utiliser certains AOP - fournissez simplement un conseil qui, après la création de la connexion, s'exécutera et fera tout ce dont vous avez besoin là-bas. Fondamentalement, c'est le même proxy mais créé automatiquement par Spring.