gpt4 book ai didi

java - Hibernate 5.2.10 DDL 自动更新到 AWS RDS (MySql 5.6.10a) 创建 TINYBLOB for Instant

转载 作者:行者123 更新时间:2023-11-30 21:50:49 25 4
gpt4 key购买 nike

我有一个带有 java.time.Instant 类型的 @Column 的 JPA @Entity。我的理解是这应该映射到 TIMESTAMP 的列类型。但是,Hibernate 自动更新创建了类型为 TINYBLOB 的列,并且它存储在那里的数据不可转换回 Instant。我手动将 @Column 类型更新为 TIMESTAMP,但 Hibernate 仍然失败,因为它试图以 TINYBLOB 格式插入数据。我读了here Hibernate 5 开箱即用地处理 JDK 8 类,所以我想知道为什么情况似乎并非如此。我使用 java.sql.Timestamp 解决了这个问题,但我不得不问,有没有办法让 Hibernate 将 Instant 作为时间戳持久保存?这是 JDBC 驱动程序或 AWS RDS 提供的旧版本 MySQL 的问题吗?

最佳答案

添加hibernate-java8 依赖应该可以解决您的问题。默认情况下,Java 的 Instant 在 RDS 中变为 datetime

maven pom.xml 示例:

<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-java8</artifactId>
<version>5.1.0.Final</version>
</dependency>

关于java - Hibernate 5.2.10 DDL 自动更新到 AWS RDS (MySql 5.6.10a) 创建 TINYBLOB for Instant,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47358686/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com