【发布时间】:2020-01-03 06:06:11
【问题描述】:
假设我有两个实体:
class User {
@Id private int id;
private String name;
private int addressId;
}
class Address {
@Id private int id;
private String street;
}
是否可以这样做:
interface UserRepository extends CrudRepository<User, Integer> {
@Query(nativeQuery=true,
value=
"select * from user "
+ "inner join address a on a.id = u.addressId "
+ "where a.street = :address.street")
List<User> findByAddress(@Param("address") Address address);
}
即:接受一个实体(本例中为Address)作为参数,但在本机查询中引用其属性之一(本例中为Address.street)?
由于各种原因,我不能对这两个实体使用“正常”@ManyToMany 和 JPA 查询。
【问题讨论】:
标签: java spring spring-data-jpa spring-data