Anda bisa mendapatkan akses ke Connection in Work tanpa proxy dengan menelepon:
public void execute(Connection connection) throws SQLException {
Connection unproxiedConnection = connection.unwrap( Connection.class );
...
}
Formulir itu memanfaatkan metode unwrap JDBC 4, kami hanya mendelegasikannya ke koneksi yang mendasarinya. Atau jika Anda secara khusus membutuhkan OracleConnection:
public void execute(Connection connection) throws SQLException {
OracleConnection oracleConnection = connection.unwrap( OracleConnection.class );
...
}
Anda juga dapat menggunakan:
public void execute(Connection connection) throws SQLException {
Connection unproxiedConnection = ( (JdbcWrapper<Connection>) connection ).getWrappedObject();
...
}
Saya telah bolak-balik dalam hal mempertimbangkan mengizinkan Pekerjaan untuk menandakan bahwa ia menginginkan Koneksi yang tidak diproksi, tetapi mengingat ketersediaan Koneksi#unwrap saya tidak begitu yakin ada manfaat nyata.