昨天我遇到了类似的问题,如何在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;
}有没有一种简单的方法可以编写一个基于用户ID返回所有UserTag的查询?我知道我在User中有信息,但如果我创建了一个公共
interface UserRepository extends JpaRepository<User, Integer>{
那么我只能得到用户对象,而不能得到标签?
您可以进入UserRepository
中的其他对象,而不是User
的对象。
@Query("SELECT u.tags FROM User u WHERE u.id = :id")
public Set<UserTag> getUserTagsByUserId(@Param("id") int id);