一个机构 : 多个用户
OrgTable实体类 :User实体类
OrgTable.java(一)
注解@OnetoMany,mappedBy=“org”,就是由“多”的那端维护(下面User类定义的OrgTable org),
一般都是懒加载,即第一次用到时加载,避免刚启动就加载太多数据
集合List<User>的set、get方法
private ListuserList; // 该机构下的用户列表 @OneToMany(mappedBy = "org", fetch = FetchType.LAZY) public List getUserList() { return userList; } public void setUserList(List userList) { this.userList = userList; }
User.java(多)
@ManyToOne,对应上面的@OneToMany
@JoinColumn,引用外键org_id,关联外键所在表,也就是实体类OrgTable对应的表,
一般都是“多”的这端维护,也就是添加@JoinColumn,
set、get方法
private OrgTable org; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "org_id") public OrgTable getOrg() { return org; } public void setOrg(OrgTable org) { this.org = org; }
多对一关联映射原理:在多的一端加入一个外键,指向一的一端
一对多关联映射和多对一关联映射原理是一致的,都是在多的一端加入一个外键,指向一的一端。
多对一维护的关系是:多指向一的关系,有了此关系,加载多的时候可以将一加载上来
一对多维护的关系是:一指向多的关系,有了此关系,在加载一的时候可以将多加载上来