问题描述
我有2个课程
Student.java
public class Student {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int student_id;
private String student_name;
@OnetoMany(mappedBy ="student",cascade = CascadeType.ALL,fetch=FetchType.LAZY )
private List<Book> books;
//the getters and setters
}
Book.java
public class Book
{ @Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int book_id;
private String book_name;
@ManyToOne(fetch=FetchType.LAZY)
private Student student;
//the getters and setters
}
我知道预先加载和延迟加载之间的区别在于,预先加载可帮助您一次加载所有需要的实体,而延迟加载则在需要时加载它们。因此,对于我的Student类,由于我正在使用LAZY加载,因此它加载了student_id,student_name,但直到我调用getBooks()方法时才加载列表书。对于父实体很明显。 但是对于子实体,这有点令人困惑。在Book类中(在@ManyToOne关系中)使用预先加载和延迟加载有什么区别
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)