【发布时间】:2023-04-05 04:42:01
【问题描述】:
我有一个关于使用 hql 连接 2 个实体的问题。
从 userProfile 开始,我必须检索与此 userProfile 关联的角色名称。所以我需要进行连接才能将其放入角色表中。
我有以下类 UserProfile :
@Entity
@Table(name="USER_PROFILES")
public class UserProfile extends VersionedObject implements Serializable {
public static final int CAID_LENGTH = 64;
@Column(nullable=false, length=CAID_LENGTH)
private String caid;
@Column(length=255)
private String description;
@CollectionOfElements
@JoinTable(
name="USER_ROLES",
joinColumns={
@JoinColumn(name="user_id", referencedColumnName="id"),
@JoinColumn(name="user_v_no", referencedColumnName="v_no")
})
@Column(name="role_id")
private Set<Integer> roleIds;
这里是 Role.java 类:
@Entity
@Table(name="ROLES")
public class Role extends VersionedObject implements Serializable {
@Column(nullable=false, length=255)
private String name;
@Column(length=255)
private String description;
@CollectionOfElements
@JoinTable(
name="ROLES_RIGHTS",
joinColumns={
@JoinColumn(name="role_v_no", referencedColumnName="v_no"),
@JoinColumn(name="role_id", referencedColumnName="id")
})
private Set<Right> rights;
您知道如何根据 userProfile.java 中的private Set<Integer> roleIds 进行连接以检索关联的角色以检索名称吗?
非常感谢:)
【问题讨论】:
标签: hibernate hql criteria detachedcriteria