我有两个实体 bean:
@Entity
public class User {
@Id
@GeneratedValue
private Long id;
@OneToMany(mappedBy="user", cascade = CascadeType.ALL)
private List<Comment> comments = new ArrayList<Comment>();
//SOME OTHER CLASS VARIABLES
//GETTERS AND SETTERS
}
我的评论课是这样的:
@Entity
public class Comment {
@Id
@GeneratedValue
private Long id;
private String title;
private String content;
@ManyToOne
private User user
//SOME OTHER CLASS VARIABLES
//GETTERS AND SETTERS
}
现在我知道我可以从会话中获取用户对象并像这样为我的评论设置用户,以便能够使用 JPA 中的加入功能:
commentObject.setUser(TheSessionGrabedUserObject/UserObjectWhichHasFetchedFromDbUsingUserId);
但只要我有我的用户对象的用户 ID,我就不需要这样做。我正在寻找一种方法来将此 foreignKey 插入到我的评论表中,而无需从会话中获取用户对象,或者可能先查询数据库以获取它!
我将如何使用 JPQL 来做到这一点?