3

我正在尝试在包级别上使用 Hibernate @TypeDef 注释,就像在Hibernate 文档中描述的那样。我正在使用Hibernate 3.6Spring 3.0.7。代码编译并package-info.class在类路径中,但 Hibernate 仍然看不到它。

如果我放入@TypeDef班级级别,它可以工作,但如果我放入package-info. 我试图谷歌但找不到任何有用的东西。

谢谢!

4

4 回答 4

7

您可能需要添加一个

<resource package="com.foo.bar.thepackage"/>

到您的 Hibernate 配置文件,或调用configuration.addPackage("com.foo.bar.thepackage")

于 2012-05-17T16:56:14.610 回答
2

对于 Hibernate 4,您必须添加

<mapping package="com.foo.bar.thepackage">

到你的 Hibernate 配置文件。

于 2013-02-07T22:12:11.177 回答
2

如果使用 JPA,则使用

<class>com.foo.bar.thepackage</class>
在persistence.xml 中也应该可以工作。

于 2013-06-27T22:22:29.143 回答
2

我相信这是由于 Spring 中的一个错误,它不会扫描 package-info 中的注释,而只会扫描带有 @Entity、@Embeddable 或 @MappedSuperclass 注释的类上的注释。请参阅https://jira.springsource.org/browse/SPR-8589

于 2013-11-20T18:14:56.723 回答