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

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐