您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Hibernate Search是否需要@DocumentId?

Hibernate Search是否需要@DocumentId?

@DocumentId如果您使用的是老式的样式来映射实体和.hbm.xml文件,则必须使用。如果您使用该映射方法而忽略了对文档ID的注释,那么在启动时,您将看到如下异常:

org.hibernate.search.SearchException: No document id in: com.mypackage.MyEntity

但是,如果您使用的是注释,并使用注释了主键@Id,则不必使用@DocumentId

更准确地说,Hibernate Search文档说这@DocumentId在使用 注释时是可选的。因此,@DocumentId如果您正在使用Hibernate 3.x样式的注释,也许您仍需要使用…我从未测试过。

无论哪种方式, 您在查询中使用的是Hibernate Session而不是JPA ,Hibernate 4.x都会弃用自己的映射注释,而使用JPA样式的注释EntityManager。简而言之:@DocumentId如果您正在使用XML样式的映射,则需要使用…,而如果您使用的是注释,则是可选的,因为此时您仍应使用JPA样式的注释。

其他 2022/1/1 18:14:50 有402人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶