Spring JpaRepository如何查询@ManyToMany实体
Spring JpaRepository how to query a @ManyToMany entity
我昨天遇到了类似的问题,,但现在我遇到了不同的问题。 类 用户和标签依赖@manyToMany。
public class User {
@Id
@GeneratedValue
private int id;
@ManyToMany
private Set<UserTag> tags;
}
和用户标签:
@Entity
public class UserTag {
@ManyToMany
private Set<User> users;
}
有没有一种简单的方法可以根据用户 ID 编写 return 所有 UserTag 的查询?我知道我在用户中有信息,但是如果我创建一个 public
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);
我昨天遇到了类似的问题,
public class User {
@Id
@GeneratedValue
private int id;
@ManyToMany
private Set<UserTag> tags;
}
和用户标签:
@Entity
public class UserTag {
@ManyToMany
private Set<User> users;
} 有没有一种简单的方法可以根据用户 ID 编写 return 所有 UserTag 的查询?我知道我在用户中有信息,但是如果我创建一个 public
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);