Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hibernate 5.2.10对AWS RDS的DDL自动更新(MySql 5.6.10a)创建了即时的TINYBLOB_Java_Mysql_Hibernate_Amazon Web Services_Jpa - Fatal编程技术网

Java Hibernate 5.2.10对AWS RDS的DDL自动更新(MySql 5.6.10a)创建了即时的TINYBLOB

Java Hibernate 5.2.10对AWS RDS的DDL自动更新(MySql 5.6.10a)创建了即时的TINYBLOB,java,mysql,hibernate,amazon-web-services,jpa,Java,Mysql,Hibernate,Amazon Web Services,Jpa,我有一个JPA@实体,它的@Column类型为java.time.Instant。我的理解是,这应该映射到时间戳的列类型。但是,Hibernate auto update创建了类型为TINYBLOB的列,并且它在其中存储的数据不能立即转换回。我手动将@Column类型更新为TIMESTAMP,但Hibernate仍然失败,因为它试图以TINYBLOB格式插入数据。我读到Hibernate5开箱即用地处理JDK8类,所以我想知道为什么情况并非如此。我使用java.sql.Timestamp解决了这

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

添加hibernate-java8依赖项应该可以解决您的问题。默认情况下,Java的即时在RDS中变为日期时间

maven pom.xml的示例:

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

org.hibernate
hibernate-java8
5.1.0.1最终版本

添加hibernate-java8依赖项应该可以解决您的问题。默认情况下,Java的即时在RDS中变为日期时间

maven pom.xml的示例:

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

org.hibernate
hibernate-java8
5.1.0.1最终版本