我昨天遇到了类似的问题,how to write a query in JpaRepository,但现在我有一个不同的问题。类User和Tag是@manyToMany依赖的。
public class User {
@Id
@GeneratedValue
private int id;
@ManyToMany
private Set<UserTag> tags;
}
和UserTag:
@Entity
public class UserTag {
@ManyToMany
private Set<User> users;
} 有没有一种简单的方法来编写一个基于userID返回所有UserTag的查询?我知道我有用户信息,但如果我创建一个公共
interface UserRepository extends JpaRepository<User, Integer>{
然后我只能获取用户对象,而不是标签?
答案 0 :(得分:8)
您可以访问UserRepository
其他对象,然后User
。
@Query("SELECT u.tags FROM User u WHERE u.id = :id")
public Set<UserTag> getUserTagsByUserId(@Param("id") int id);