几天以来,我尝试用Oracle的连接池替换Tomcats dbcp。这是必需的,因为Web应用程序使用某些Oracle特定的功能。
当前,JNDI数据源是通过以下方式配置的:
<Resource
name="jdbc/oracle"
driverClassName="oracle.jdbc.OracleDriver"
auth="Container"
type="oracle.jdbc.pool.OracleConnectionPoolDataSource"
factory="oracle.jdbc.pool.OracleDataSourceFactory"
user="*****"
password="*****"
url="*****"
/>
当我从池中建立连接时,它仍然是类型
org.apache.commons.dbcp.PoolingDataSource.PoolGuardConnectionWrapper
有人可以给我提示吗,这是怎么回事?
提前致谢,
马库斯
最佳答案
您可以通过调用以下内容获取包装的连接:http://www.docjar.com/docs/api/org/apache/commons/dbcp/PoolingDataSource.PoolGuardConnectionWrapper.html#getDelegate()
然后将其转换为具体的Oracle连接对象。
顺便说一句:没问题,大多数(如果不是全部)应用程序服务器都使用某种包装器来包装隔离连接。
关于oracle - Tomcat:用OracleConnectionPoolDataSource替换DBCP,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6789268/