两者都还用于注释jpa实体中的“外键”,对吗?我确实了解@searchablecomponent

假设我们有类别和子类别。在@searchablecomponent的情况下,搜索子类别将返回类别。那@searchablereference呢?我不明白这个吗?对于@searchablereference的情况,搜索子类别是否仍将返回类别?

参考:http://www.opensymphony.com/compass/versions/0.9.0/html/core-osem-annotations.html

最佳答案

这些注释是指南针API的一部分,与JPA(或Hibernate,数据库等)无关。但是,这些概念是相似的。

如果用ClassA注释@SearchableReference的属性,则Compass将仅存储所引用对象的ID。它类似于Hibernate的“多对一”或@ManyToOne关系。

如果使用@SearchableComponent,则Compass将引用对象存储在指南针中时会“内联”该对象的所有属性,类似于Hibernate的<component>@Embedded

与Hibernate / JPA的相似性很强,这就是术语的来源。

关于java - 解释指南针@SearchableComponent @SearchableReference,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2152286/

10-10 07:12