sql >> Database teknologi >  >> RDS >> Oracle

Udførelse af indbygget forespørgsel med Hibernate 4.1

Du kan få adgang til den ikke-proxerede Connection in Work ved at ringe til:

public void execute(Connection connection) throws SQLException {
    Connection unproxiedConnection = connection.unwrap( Connection.class );
    ...
}

Denne formular udnytter JDBC 4 unwrap-metoden, vi uddelegerer den blot til den underliggende forbindelse. Eller hvis du specifikt har brug for en OracleConnection:

public void execute(Connection connection) throws SQLException {
    OracleConnection oracleConnection = connection.unwrap( OracleConnection.class );
    ...
}

Du kan også bruge:

public void execute(Connection connection) throws SQLException {
    Connection unproxiedConnection = ( (JdbcWrapper<Connection>) connection ).getWrappedObject();
    ...
}

Jeg er gået frem og tilbage i forhold til at overveje at tillade Værket at angive, at det ønsker en uproxied forbindelse, men i betragtning af tilgængeligheden af ​​Connection#unwrap er jeg ikke så sikker på, at der er en reel fordel.




  1. Er Postgres designet til at skrive til delte datalagre?

  2. SQL Natural Join

  3. Sådan sender du variabel i mysql_query

  4. Udløs alternativer for to tabeller, der gensidigt skal opdatere hinanden