使用Hibernate Criteria api检索emebedded或组件

Kon*_*tin 7 hibernate criteria

我把这个类映射为一个实体,让我们称之为Person.Person与Address具有嵌入/组件关系.我在使用会返回Address对象的Criteria时遇到问题.我试过这个:

Criteria.createCriteria(Address.class)
Run Code Online (Sandbox Code Playgroud)

哪个不起作用.我想我需要通过实体然后我需要某种投影?

Criteria.createCriteria(Person.class).<<what goes here???>>
Run Code Online (Sandbox Code Playgroud)

建议?

Chs*_*y76 6

组件的生命周期由其所有者控制; 他们不被认为是协会.因此,您无法从查询中自行检索组件.但是,您可以在标准中使用它.

假设您的"地址"类在"人物"中被映射为"地址",您可以执行以下操作:

Criteria.createCriteria(Person.class)
 .add(Restrictions.eq("address.street", street));
Run Code Online (Sandbox Code Playgroud)