我有以下2类与Hibernate和Hibernate搜索注释:
父类:
@Indexed
@Entity
public class Parent {
@Id
@Column(name="parent_id")
private Long id;
@Field(store = Store.YES)
private String name;
@IndexedEmbedded
@OneToMany(fetch = FetchType.LAZY, mappedBy = "parent", targetEntity = Child.class)
private List<Child> childList;
//getters and setters
}
儿童班:
@Entity
public class Child {
@Id
private Long id;
@ManyToOne(targetEntity = Parent.class)
@ContainedIn
@JoinColumn(name = "parent_id")
private Parent parent;
@Field(store = Store.YES)
private String name;
}
我为上述场景创建了一个索引。现在我试图通过搜索给定的父名称来获得所有的子名称。
我在现场使用的投影如下:
Query searchQuery = queryBuilder.keyword().onField("name").matching("test").createQuery();
FullTextQuery fullTextQuery = fullTextEntityManager.createFullTextQuery(searchQuery, Parent.class);
fullTextQuery.setProjection("childList.name");
现在,当我尝试运行查询来检索搜索结果时,我只得到父模型的第一个孩子的名字。
当我看到使用Luke的索引时,我能够看到文档中的所有值。
如何获取索引中存储的所有子名称列表?
在本例中,您有一个需要“掉头”的模型。
您的目标是查询子名称列表,因此需要搜索子实体。
您仍然可以在每个子项中包含“父项的名称”,并限制对该名称的查询。
@Entity @Indexed
public class Child {
...
Query searchQuery = queryBuilder.keyword().onField("parent.name").matching("test").createQuery();
FullTextQuery fullTextQuery = fullTextEntityManager.createFullTextQuery(searchQuery, Child.class);
fullTextQuery.setProjection("name");
本文向大家介绍Microsoft SQL Server 检索所有存储过程的列表,包括了Microsoft SQL Server 检索所有存储过程的列表的使用技巧和注意事项,需要的朋友参考一下 示例 下面的查询将返回数据库中的所有存储过程的列表,以及关于每个存储过程的基本信息: SQL Server 2005 的ROUTINE_NAME,ROUTINE_SCHEMA和ROUTINE_DEFINITI
问题内容: 我想在Hibernate Projection List中使用嵌套对象值。我有OneToMany和ManyToOne关系的Pojo“ Charge”和“ Tariff”课程。 我的示例代码如下: 收费 关税 我想按收费模式从关税中提取金额值。 我写的SQL标准,即工作。 选择charge.amount,charge.name从charge,tariff那里的charge.name喜欢’
我有一个关于嵌套列表投影界面用法的问题。我有两个实体(父和子)(它们有单向关联) 父级=> 子=> 我有两个选择特定列投影界面。 这个查询可以工作,但是它选择ChildEntity的所有列,并且只将id、name propeties映射到ChildProjection。(生成的查询选择所有列,但我想只选择id和name列) 我如何只选择id和name列(为嵌套列表投影界面选择特定列)并映射到Chi
我的问题是:当我对父实体(合同)执行查询时,在子实体(ContractHeader)上应用过滤器并使用FetchType。LAZY,LAZY规则应用正确,但当我尝试访问子列表(ContractHeader)时,过滤器不会应用于子对象,所有子对象都加载到列表中。有人能帮我回答这个问题吗?过滤器应与fetchtype一起使用。懒惰? 有人成功地实施了这样的事情吗? Tks! 我拥有以下实体: 在调用查
问题内容: 我正在尝试以android应用程序的形式创建一个小型课程聚合程序。 我的课程全部存储在Firebase实时数据库中,该数据库可从firebase控制台查看,并且一切正常。 问题是我已经编写了一个Java方法来连接到DB,从DB检索数据,将数据转换为Custom Java对象,将其附加到另一个Custom Java对象,然后将该对象保存到ArrayList中。 与数据库的连接已成功建立,