假设我有3个实体 - User
,Skills
,Department
和我有相应的所有存储库 - UserRepository
,SkillRepository
,DepartmentRepository
。
我知道应该在相应的实体类中指定实体之间的关系映射,即一对多。问题是我想在查询中使用所有3个实体。我该怎么办?单个存储库只与一个实体相关联吗?那么,我将如何/在哪里写它?
由于有许多不同的方法可以使用Spring Data JPA指定查询,因此可以有各种答案。
A
引用B
,你只想用你的B
得到A
s,你只需使用你的ARepository
加载A
s并使用对象导航来获取你的B
s。您可以阅读有关如何控制此操作的更多信息。@Query
注释,您可以(几乎)使用JPQL执行任何操作。除此之外,您还可以导航属性以在where子句中使用它们。通常,您将根据返回的主实体将该查询放在匹配的存储库中。