gpt4 book ai didi

hibernate-search - 休眠搜索,查询关联

转载 作者:行者123 更新时间:2023-12-04 07:27:37 26 4
gpt4 key购买 nike

我是 Hibernate 搜索的新手,谁能建议我如何查询嵌入式实体(一对多)

@Indexed
@Entity
public class EventDetails implements Serializable
{
@OneToMany( cascade = CascadeType.ALL )
@IndexedEmbedded
@JoinColumn( name = "event_id" )
private Set<Batches> batches;

--setter and getter--
}


@Entity
@Indexed
public class Batches
{
@Column( name = "batch" )
private String batch;

@ManyToOne
@ContainedIn(mappedBy="batches")
private EventDetails eventDetails;

--setter and getter--
}

服务类
public List<EventDetails> search()
{
fullTextEntityManager = org.hibernate.search.jpa.Search.getFullTextEntityManager(getEntityManager());
QueryBuilder q = fullTextEntityManager.getSearchFactory().buildQueryBuilder().forEntity(EventDetails.class).get();
org.apache.lucene.search.Query luceneQuery = q.keyword().wildcard().onField("").matching(text).createQuery();
javax.persistence.Query jpaQuery = fullTextEntityManager.createFullTextQuery(luceneQuery, EventDetails.class);
List<EventDetails> list = jpaQuery.getResultList();
return list;
}

现在,如果我必须在批处理表中的“批处理”属性上实现全文查询,我应该将什么作为参数传递给我的服务中的“onField()”方法?

谢谢 !

最佳答案

请使用 batches.batch .您还必须索引 batch字段使用 @Field注解。

另请参阅休眠搜索文档 herehere

您可以随时使用 luke查看和查询索引中的字段。

关于hibernate-search - 休眠搜索,查询关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34609135/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com