Можете да получите достъп до връзката без прокси в работата, като се обадите на:
public void execute(Connection connection) throws SQLException {
Connection unproxiedConnection = connection.unwrap( Connection.class );
...
}
Този формуляр използва метода за разгъване на JDBC 4, ние просто делегираме това на основната връзка. Или ако конкретно имате нужда от OracleConnection:
public void execute(Connection connection) throws SQLException {
OracleConnection oracleConnection = connection.unwrap( OracleConnection.class );
...
}
Можете също да използвате:
public void execute(Connection connection) throws SQLException {
Connection unproxiedConnection = ( (JdbcWrapper<Connection>) connection ).getWrappedObject();
...
}
Вървях напред-назад по отношение на обмислянето на позволяването на Работата да означава, че иска връзка без прокси, но като се има предвид наличието на Connection#unwrap, не съм толкова сигурен, че има реална полза.