我有两个课程:Staff
和State
。
public class State {
@Id
private String id;
private String name;
}
public class Staff {
@Id
@Column(nullable = false, columnDefinition="VARCHAR(100)")
private String id;
private String name;
private String phoneNo;
private String address;
@OneToOne
@JoinColumn(name = "state_id")
private State state;
}
如何使用JpaRepository进行查询以按State.name
进行过滤。由于它是使用state_id
映射的?
类似的东西:
//current DAO to filter by staff's name
List<Staff> findByNameContaining(String name);
但我希望按name
的{{1}}和Staff
的{{1}}进行过滤。
答案 0 :(得分:2)
试试这个。
List<Staff> findByNameAndState_Name(String staffName, String stateName)
答案 1 :(得分:0)
你也可以这样做。尝试创建如下方法。传递州名。
列出findByStateName(String stateName);