我已經實現了commons dbcpPoolingDataSource
及其完美的工作 - 直到我遇到了使用java.sql.PreparedStatement
接口的特定實現的問題。PoolingDataSource - 如何使用特定於驅動程序的PreparedStatement實現
((OraclePreparedStatement) getStatement()).registerReturnParameter(index, sqlType);
java.lang.ClassCastException:
org.apache.commons.dbcp.DelegatingPreparedStatement
cannot be cast to oracle.jdbc.OraclePreparedStatemen
我明白爲什麼會發生這種情況。 是否有任何方法使用PreparedStatement的供應商特定實現,但是仍然能夠使用Commons DBCP提供的連接池?我想使用特定於Oracle實現的registerReturnParameter()和getReturnResultSet()。我知道我違反了基本規則#1 ...
此外,PoolingDataSource被包裝一OracleXADataSource這使我相信,它在某種程度上可以做到這一點...
感謝和抱歉打破這一個規則:/ –