sql >> Database >  >> RDS >> Oracle

Native query uitvoeren met Hibernate 4.1

U kunt toegang krijgen tot de Unproxied Connection in Work door te bellen naar:

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

Die vorm maakt gebruik van de JDBC 4 unwrap-methode, we delegeren dat eenvoudig aan de onderliggende verbinding. Of als u specifiek een OracleConnection nodig heeft:

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

Je zou ook kunnen gebruiken:

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

Ik ben heen en weer gegaan met het overwegen om het Werk toe te staan ​​om aan te geven dat het een niet-geproxieerde verbinding wil, maar gezien de beschikbaarheid van Connection#unwrap ben ik er niet zo zeker van of er een echt voordeel is.




  1. DISTINCT met twee array_agg (of één array_agg met tuple erin)?

  2. Hoe verborgen items in de VBA-objectbrowser te tonen

  3. Hoe de primaire index opnieuw te berekenen?

  4. Hoe krijg ik Oracle, kijk welke procedures er lopen?