jpa:渴望与子实体中的延迟加载

问题描述

我有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 (将#修改为@)