我正在使用Hibernate 5.3开发一个项目,并且在类似以下用例方面遇到问题。如果我正在编写一个简单的博客应用程序,并且具有如下所示的obj:
@Entity
public class Post {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;
private User author;
private String text;
// getters, setters omitted
}
和用户obj
@Entity
public class User {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;
private String name;
private String email;
// getters, setters omitted
}
然后在DAO中我想做类似的事情:
public void savePost(Post post) {
if (post.getUser.isLoggedOn()) {
// code for saving
}
}
是最好的方法,还是做类似的事情更好:
public void savePost(Post post, User user) {
if (user.isLoggedOn()) {
// code for saving
}
}
并且在Post类中有一个authorId
而不是User ojb吗?
我看过的许多搜索都链接到了较旧的hibernate版本,这些版本似乎与hibernate 5完全不同,因此不确定是否有多少交叉。