簡體   English   中英

如何將Jdbc4Connection轉換為PGConnection?

[英]How to cast Jdbc4Connection to PGConnection?

我想利用postgres CopyManager

CopyManager cp = ((PGConnection) dataSource.getConnection()).getCopyAPI();

因為我使用的是spring-boot ,所以datasource是一個org.apache.tomcat.jdbc.pool.DataSource ,因此連接一個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);
}

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM