開發環境為
- spring-boot:2.2.5.RELEASE
- hibernate:4.3.11.Final
- spring-orm:4.3.25.RELEASE
Caused by: java.lang.AbstractMethodError:
com.mchange.v2.c3p0.impl.NewProxyConnection.createClob()Ljava/sql/Clob;
Exception 是由 hibernate 中管理連線的 c3p0 跳出,上網 google 相關討論滿多的,先試試第一種解法,升級 c3p0 版本,升級到 0.9.5.2。c3p0 版本升級後,跳出新的 exception,變成 postgresql jdbc 沒有實作,詳見 github issue。Caused by: org.postgresql.util.PSQLException: 這個 org.postgresql.jdbc4.Jdbc4Connection.createClob() 方法尚未被實作。
at org.postgresql.Driver.notImplemented(Driver.java:753)
at org.postgresql.jdbc4.AbstractJdbc4Connection.createClob(AbstractJdbc4Connection.java:40)
接著第二種方法是在 hibernate.properties 中,新增設定,不需要特別去升級 c3p0,如果有使用 spring-jpa,設定又會不一樣,開啟後就沒有跳出 exception,一切正常。hibernate.temp.use_jdbc_metadata_defaults=false
Spring 與 hibernate 整合的完整流程https://tpu.thinkpower.com.tw/tpu/articleDetails/1303
Reference
https://blog.csdn.net/qq_36439700/article/details/81330954
https://blog.csdn.net/Elion_jia/article/details/80651588
沒有留言:
張貼留言