Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.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中为LocalDateTime创建列类型Datetime_Java_Hibernate_Jpa - Fatal编程技术网

Java 在Hibernate中为LocalDateTime创建列类型Datetime

Java 在Hibernate中为LocalDateTime创建列类型Datetime,java,hibernate,jpa,Java,Hibernate,Jpa,使用JPA在MariaDB中创建列类型Datetime的正确方法是什么?我试过这个: @Column @Temporal(TemporalType.TIMESTAMP) private LocalDateTime created_at; 但我有一个例外: Caused by: org.hibernate.AnnotationException: @Temporal should only be set on a java.util.Date or java.util.Calendar prop

使用JPA在MariaDB中创建列类型Datetime的正确方法是什么?我试过这个:

@Column
@Temporal(TemporalType.TIMESTAMP)
private LocalDateTime created_at;
但我有一个例外:

Caused by: org.hibernate.AnnotationException: @Temporal should only be set on a java.util.Date or java.util.Calendar property: org.plugin.entity.Transactions.created_at

您能提出一些解决方案吗?

将Hibernate版本更新为5.x或最新版本,有

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

您有
springbootstarter数据jpa
依赖项,它作为编译依赖项具有
hibernate核心

如果您使用的是spring boot 1.4.x或更高版本,则会得到Hibernate 5:

您只需添加以下依赖项即可:

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

可能重复我使用JPA。这些是我的POM依赖项:你能为JPA推荐一些解决方案吗?我使用
spring boot starter父版本2.0.5。发布
则需要时态注释或其他依赖项。我应该使用什么列类型声明?你不需要
@Temporal
注释。如有必要,任何必需的转换都将由hibernate本身完成。如果表列名与对象属性名匹配,则您甚至不需要
@column
注释。就照我在答案里写的那样写吧。不需要注释。
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-java8</artifactId>
    <version>5.0.0.Final</version>
</dependency>
private LocalDateTime created_at;