两者都还用于注释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/