我想要的是一个类似于:
的查询SELECT s FROM First s WHERE s.x = :x and s.secondId.thirdId.id = :id;
我正在尝试将其迁移到spring数据。 我无法弄清楚我的存储库中的methodname应该是什么。
我的实体:
First{
int x;
@JoinColumn(name = "second_id", referencedColumnName = "id")
@ManyToOne(optional = false)
private Second secondId;
}
Second{
int id;
@JoinColumn(name = "third_id", referencedColumnName = "id")
@ManyToOne(optional = false)
private Third thirdId;
int c;
}
Third {
int id;
// more data here
int b;
int c;
}
我试过了:findByThirdIdAndX(int id, xval);
得到:
无效的派生查询!找不到第一个
类型的属性thirdId
我怎样才能做到这一点?
答案 0 :(得分:1)
thirdId
是secondId
的属性,属于First
的属性。这是你如何指定:
findBySecondIdThirdIdIdAndX(int id, int xval);
Here是嵌套属性的相关文档。