首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Joda时间和hibernate 4

Joda时间和hibernate 4
EN

Stack Overflow用户
提问于 2014-01-15 06:32:06
回答 2查看 10.5K关注 0票数 6

我使用hibernate 4与joda时间和春季数据jpa。Spring数据提供注释。

代码语言:javascript
运行
复制
@CreadedOn
@LastModifiedOn

我正在尝试使用这两个annotations.Below是我的pojo的快照

代码语言:javascript
运行
复制
@Entity
@Table(name="restaurant")
@Audited
public class Restaurant {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;

private String restaurantName;

@CreatedDate
@Type(type = "org.jadira.usertype.dateandtime.joda.PersistentDateTime")
 // @Type(type = "org.jadira.usertype.dateandtime.threetenbp.PersistentDateTime")
private DateTime createdOn;

@LastModifiedDate
@Type(type = "org.jadira.usertype.dateandtime.joda.PersistentDateTime")
 // @Type(type = "org.jadira.usertype.dateandtime.threetenbp.PersistentDateTime")
private DateTime modifiedOn;
}

按照用户类型jodatime提供的说明,我已经用@Type .but注释了我的属性--仍然没有luck.Everytime --我使用了@Type注释并将它部署到服务器上,得到一个错误。

严重:错误listenerStart

完整堆栈跟踪如下

代码语言:javascript
运行
复制
    Jan 15, 2014 11:40:00 AM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive G:\apache-tomcat-7.0.47\webapps\base-spr
ing-data-jpa.war
Jan 15, 2014 11:40:00 AM org.apache.catalina.loader.WebappClassLoader validateJa
rFile
INFO: validateJarFile(G:\apache-tomcat-7.0.47\webapps\base-spring-data-jpa\WEB-I
NF\lib\javax.servlet-api-3.1.0.jar) - jar not loaded. See Servlet Spec 2.3, sect
ion 9.7.2. Offending class: javax/servlet/Servlet.class
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further detail
s.
Jan 15, 2014 11:40:05 AM org.hibernate.annotations.common.Version <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {4.0.2.Final}
Jan 15, 2014 11:40:05 AM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.2.7.Final}
Jan 15, 2014 11:40:05 AM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found
Jan 15, 2014 11:40:05 AM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
Jan 15, 2014 11:40:05 AM org.hibernate.ejb.Ejb3Configuration configure
INFO: HHH000204: Processing PersistenceUnitInfo [
        name: default
        ...]
Jan 15, 2014 11:40:05 AM org.hibernate.service.jdbc.connections.internal.Connect
ionProviderInitiator instantiateExplicitConnectionProvider
INFO: HHH000130: Instantiating explicit connection provider: org.hibernate.ejb.c
onnection.InjectedDataSourceConnectionProvider
Jan 15, 2014 11:40:06 AM org.hibernate.dialect.Dialect <init>
INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQLDialect
Jan 15, 2014 11:40:06 AM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error listenerStart
Jan 15, 2014 11:40:06 AM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [/base-spring-data-jpa] startup failed due to previous errors
Jan 15, 2014 11:40:06 AM org.apache.catalina.loader.WebappClassLoader clearRefer
encesJdbc
SEVERE: The web application [/base-spring-data-jpa] registered the JDBC driver [
com.mysql.jdbc.Driver] but failed to unregister it when the web application was
stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistere
d.
Jan 15, 2014 11:40:06 AM org.apache.catalina.loader.WebappClassLoader clearRefer
encesThreads
SEVERE: The web application [/base-spring-data-jpa] appears to have started a th
read named [Abandoned connection cleanup thread] but has failed to stop it. This
 is very likely to create a memory leak.
Jan 15, 2014 11:40:06 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory G:\apache-tomcat-7.0.47\webapps\docs
Jan 15, 2014 11:40:06 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory G:\apache-tomcat-7.0.47\webapps\exampl
es
Jan 15, 2014 11:40:06 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory G:\apache-tomcat-7.0.47\webapps\host-m
anager
Jan 15, 2014 11:40:07 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory G:\apache-tomcat-7.0.47\webapps\manage
r
Jan 15, 2014 11:40:07 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory G:\apache-tomcat-7.0.47\webapps\ROOT
Jan 15, 2014 11:40:07 AM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-nio-8080"]
Jan 15, 2014 11:40:07 AM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-apr-8009"]
Jan 15, 2014 11:40:07 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 6648 ms

由于昨天我正在尝试完成这两项工作,但是做不到so.Can,请告诉我如何解决这个problem.Below是我的pom依赖和存储库。

代码语言:javascript
运行
复制
 <dependencies>
<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>3.8.1</version>
  <scope>test</scope>
</dependency>

   <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>3.2.5.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>${spring.version}</version>
    </dependency>

<dependency>
    <groupId>javax.validation</groupId>
    <artifactId>validation-api</artifactId>
    <version>1.1.0.Final</version>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-validator</artifactId>
    <version>5.0.1.Final</version>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    <version>4.2.7.Final</version>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>4.2.7.Final</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.27</version>
</dependency>
<dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-jpa</artifactId>
    <version>1.5.0.BUILD-SNAPSHOT</version>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
</dependency>
<dependency>
    <groupId>jstl</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>${spring.version}</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-aspects</artifactId>
    <version>3.2.5.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-envers</artifactId>
    <version>4.2.7.Final</version>
</dependency>
<dependency>
    <groupId>joda-time</groupId>
    <artifactId>joda-time</artifactId>
    <version>2.3</version>
</dependency>
代码语言:javascript
运行
复制
    <repository>
        <id>spring-libs-snapshot</id>
        <url>http://repo.spring.io/libs-snapshot</url>
    </repository>

</repositories>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-01-15 08:27:31

您不需要使用@Type注释。只需添加以下jpa属性:

代码语言:javascript
运行
复制
entityManagerFactory.getJpaPropertyMap().put("jadira.usertype.autoRegisterUserTypes", "true");

我还认为你错过了贾迪拉·席西:

代码语言:javascript
运行
复制
<dependency>
  <groupId>org.jadira.usertype</groupId>
  <artifactId>usertype.core</artifactId>
  <version>3.1.0.CR10</version>
</dependency>
票数 21
EN

Stack Overflow用户

发布于 2015-03-24 12:30:27

如果您使用基于注释的配置的gradle和spring引导,则可以使用@jakub-kubrynski建议。

build.gradle

代码语言:javascript
运行
复制
dependencies {
    compile 'org.jadira.usertype:usertype.core:3.2.0.GA'
}

application.properties

代码语言:javascript
运行
复制
#Hibernate config
spring.jpa.properties.jadira.usertype.autoRegisterUserTypes=true
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21130538

复制
相关文章

相似问题

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