[英]Hibernate OnetoMany relationship
我正在尝试为两个表的学生和证书实施OnetoMany关系。 我有两个班级,学生班和证书班,从学生班到证书班有一对多的关系。
学生班:
@Entity
@Table(name = "student")
public class Student implements Serializable{
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name = "id")
private Integer id;
@OneToMany(cascade = CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="student")
private List<Certificats> listCertificats;
// Getters and Setters
证书类别:
@Entity
@Table(name = "certificates")
public class Certificates implements Serializable{
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name = "id")
private Integer id;
@ManyToOne
@JoinColumn(name="student_id")
private Student student;
// Getters and Setters
我的DAO类有一种从数据库中获取数据的方法:
@SuppressWarnings("unchecked")
public List<Students> listStudents() {
List<Students> studentList;
studentList= sessionFactory.getCurrentSession().createQuery("from Student").list();
return studentList;
}
现在,当我运行此方法时,作为List的Student类中listCertificats的值始终为null。 但是,我在Student类中获得了id字段的值。 我在这里做错了什么? 我检查了一些有关Hibernate OnetoMany关系的教程,它们描述的方式与我实现的方式相同。 任何将不胜感激。
FetchType.lazy表示直到访问子实体的特定属性,您才可以看到它们的数据。
请指定您何时看到空值? 即使访问它们,您仍然看到null吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.