java条件索引与IndexedEmbedded一起工作吗?
我在网上找不到任何东西,所以我必须在这里问一下
[如何]可以对嵌入实体使用条件索引?我知道拦截器在@Indexed实体的根级别上工作,但如果我能够以某种方式将拦截器应用于索引结构中的非根实体(未使用@Indexed注释),则不会
EntityIndexingInterceptor的文档。onCollectionUpdate(…)这使我希望能够实现
对索引实体中包含的集合触发CollectionUpdate事件,例如,当使用IndexedEmbedded时,此事件在此类集合中包含的每个索引域实例T上触发;这通常类似于onUpdate(对象)事件
# 1 楼答案
是的,它是有效的,在这里查看示例:https://docs.jboss.org/hibernate/search/4.2/api/org/hibernate/search/indexes/interceptor/EntityIndexingInterceptor.html#onCollectionUpdate(T)
基本上,你会接到onCollectionUpdate的电话,所以如果你想过滤一些东西,有地方可以做。我猜你很担心
# 2 楼答案
需要在索引实体上指定拦截器。它只能作为@Indexed注释的属性使用。如果这个带注释的实体使用@IndexedEmbedded,那么如果嵌入的集合发生更改,您将在拦截器中得到一个回调
你的用例是什么