我想像这样使用postgres CopyManager
:
CopyManager cp = ((PGConnection) dataSource.getConnection()).getCopyAPI();
在我使用时spring-boot
,数据源是a org.apache.tomcat.jdbc.pool.DataSource
,因此连接是a Jdbc4Connection
。
问题:强制转换引发以下错误:
java.lang.ClassCastException: com.sun.proxy.$Proxy55 cannot be cast to org.postgresql.PGConnection
另外,当我尝试强制转换为Jdbc4Connection时,也会遇到同样的错误!
java.lang.ClassCastException: com.sun.proxy.$Proxy55 cannot be cast to org.postgresql.jdbc4.Jdbc4Connection
我能做些什么?
如果您使用的是javax.sql.DataSource,那么这里是一个解决方案:
if (dataSource.getConnection().isWrapperFor(PGConnection.class)) {
PGConnection pgConnection = dataSource.getConnection().unwrap(PGConnection.class);
}
希望这可以帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句