首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法加载请求的类: datetime

无法加载请求的类: datetime
EN

Stack Overflow用户
提问于 2018-07-05 23:22:20
回答 2查看 276关注 0票数 0

我想在Hibernate 5中使用Spring,但是在启动过程中我得到了这个错误:

代码语言:javascript
复制
Caused by: java.lang.ClassNotFoundException: Could not load requested class : datetime

这是我的POM.xml配置:

代码语言:javascript
复制
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.0.7.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>5.0.7.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>5.0.7.RELEASE</version>
            <type>jar</type>
            <scope>test</scope>
        </dependency>           
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.5</version>
        </dependency>
        <dependency>
            <groupId>javax.activation</groupId>
            <artifactId>activation</artifactId>
            <version>1.1.1</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>1.5.10.RELEASE</version>               
        </dependency>
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-api</artifactId>
            <version>8.0</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-amqp</artifactId>
            <version>1.5.10.RELEASE</version>
        </dependency>           
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</artifactId>
            <version>5.0.7.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>5.3.1.Final</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-validator</artifactId>
            <version>5.3.6.Final</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>javax.persistence</artifactId>
            <version>2.0.0</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
            <version>2.0.3.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.reactivestreams</groupId>
            <artifactId>reactive-streams</artifactId>
            <version>1.0.2</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>5.3.1.Final</version>
        </dependency>

完整的Java错误栈:https://pastebin.com/a01yU4vZ

我的模型中有datetime,我想在MariaDB中使用它。

代码语言:javascript
复制
@Type(type = "datetime")
@Temporal(TemporalType.DATE)
private DateType datetime;

我想我遗漏了一些对Hibernate的POM依赖。你能告诉我为了解决这个问题我必须添加什么依赖吗?

编辑:

对于datetime Hibernate配置,我使用:

代码语言:javascript
复制
    @Column
    @Type(type = "datetime")
    @Temporal(TemporalType.DATE)
    private DateType datetime;
EN

回答 2

Stack Overflow用户

发布于 2018-07-05 23:40:33

Hibernate Date中没有您拥有的日期时间类型:

代码语言:javascript
复制
Name = date  Java Type = java.sql.Date
Name = calendar_date  Java Type = java.util.Calendar

如果您使用的是Java 8

代码语言:javascript
复制
NAme = LocalDate  Java Type = java.time.OffsetDateTime
Name = LocalDateTimeType  Java Type = java.time.LocalDateTime

在此Documentation中查看更多信息

票数 0
EN

Stack Overflow用户

发布于 2018-07-06 23:57:13

对于实体字段datetime,您应该使用:

代码语言:javascript
复制
@Column
@Temporal(TemporalType.DATE)
private java.util.Date datetime`

java.time包中的某个类。在最后一种情况下,您可能还需要添加following dependency

代码语言:javascript
复制
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-java8</artifactId>
    <version>5.3.2.Final</version>
</dependency>

在这两种情况下,我都不认为注释@Type(type = "datetime")是必要的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51194966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档