SpringData+JPA+mysql, cannot be null when ‘hibernate.dialect‘ not set

亦凉 2023-01-16 04:54 236阅读 0赞

SpringData+JPA+mysql 8, 报错 cannot be null when ‘hibernate.dialect’ not set

是因为Hibernate SQL方言没有设置导致的,在properties文件中增加下面这行:

spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect

如果使用mysql6以上,可能继续报错

是因为版本导致的时区问题,使用5.7以下则不会报错,

解决办法:

数据库url中地址要配置“serverTimezone=UTC”

MySQL jdbc 6.0 版本以上必须配置“serverTimezone”参数

  1. UTC代表的是全球标准时间
  2. 若我们使用的时间是北京时区也就是东八区,领先UTC八个小时。url的时区使用中国标准时间。也是就serverTimezone=Asia/Shanghai

url 添加 serverTimezone=Asia/Shanghai

Hibernate SQL方言如下表:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lhbmdzaGVuZ3dlaTIzMDYxMg_size_16_color_FFFFFF_t_70

发表评论

表情:
评论列表 (有 0 条评论,236人围观)

还没有评论,来说两句吧...

相关阅读