我有两个以下的Java实体
@Entity(table="user_profiles")
class Profile{
@Column(name="id")
@Id
@GeneratedValue
private Integer id;
@Column(name="first_name")
private String firstName;
@Column(name="last_name")
private String lastName;
}
并且
@Entity
@Table(name="threads")
class Thread {
@Column(name="thread_id")
@Id
@GeneratedValue
private Integer threadId;
@Column(name="to_profile_name")
private String toProfileFullName;
@Column(name="from_profile_name")
private String fromProfileFullName;
@Column(name="to_profile_id")
private Integer toProfileId;
@Column(name="from_profile_id")
private Integer fromProfileId;
}
我需要使用Profile类的firstName + lastName填充toProfileFullName和fromProfileFullName,fromProfileId和toProfileId是Profile类的外键,有没有办法使用HQL?还是与Hibernate的关系?
答案 0 :(得分:1)
您需要在Profile
和Thread
之间创建映射。根据您的数据模型,查找OneToOne
,OneToMany
,ManyToOne
和ManyToMany
。
然后我会在Thread
创建一个简单return getProfile().getFirstName() + getProfile.getLastName()
的瞬态吸气剂。