Vous pouvez accéder à la connexion sans proxy dans Work en appelant :
public void execute(Connection connection) throws SQLException {
Connection unproxiedConnection = connection.unwrap( Connection.class );
...
}
Ce formulaire exploite la méthode de déballage JDBC 4, nous déléguons simplement cela à la connexion sous-jacente. Ou si vous avez spécifiquement besoin d'une OracleConnection :
public void execute(Connection connection) throws SQLException {
OracleConnection oracleConnection = connection.unwrap( OracleConnection.class );
...
}
Vous pouvez également utiliser :
public void execute(Connection connection) throws SQLException {
Connection unproxiedConnection = ( (JdbcWrapper<Connection>) connection ).getWrappedObject();
...
}
J'ai fait des allers-retours en envisageant de permettre au travail de signifier qu'il veut une connexion sans proxy, mais étant donné la disponibilité de Connection#unwrap, je ne suis pas sûr qu'il y ait un réel avantage.