springcloud+postgresql使用报错org.postgresql.jdbc4.Jdbc4Connection.isValid(int) 方法尚未被实作

springboot项目中,数据库使用postgresql的话,引入postgresql依赖:

<dependency>
    <groupId>postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>9.1-901-1.jdbc4</version>
</dependency>

启动项目时报如题所示的错误,解决办法是使用postgresql对springboot默认的依赖库org.postgresql:postgresql:42.2.2,配置方法如下:

<dependency>
    <groupId>org.postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <scope>runtime</scope>
</dependency>

注意,这里的groupId是有org前缀的,这时候只是解决了不报isValid(int)方法未被实作的问题,接下来,启动项目,会报另一个错误:org.postgresql.jdbc.PgConnection.createClob() 方法尚未被实作。

解决办法就是在application.yml配置文件中增加如下的配置:

spring:
  jpa:
    hibernate:
      ddl-auto: update
      dialect: org.hibernate.dialect.PostgreSQL9Dialect
    properties:
      hibernate:
        temp:
          use_jdbc_metadata_defaults: false

 

上面spring->jpa->properties部分就是需要加入的配置。配置文件看个人喜好,如果采用application.properties的配置,就增加配置spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults=false

©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页