@one to many 和 @many to one小例子

一个机构  : 多个用户

OrgTable实体类 :User实体类

OrgTable.java(一)

注解@OnetoMany,mappedBy=“org”,就是由“多”的那端维护(下面User类定义的OrgTable org),

一般都是懒加载,即第一次用到时加载,避免刚启动就加载太多数据

集合List<User>的set、get方法

    private List<User> userList; // 该机构下的用户列表

    @OneToMany(mappedBy = "org", fetch = FetchType.LAZY)
public List<User> getUserList() {
return userList;
}
public void setUserList(List<User> 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;
}

多对一关联映射原理:在多的一端加入一个外键,指向一的一端

一对多关联映射和多对一关联映射原理是一致的,都是在多的一端加入一个外键,指向一的一端。

多对一维护的关系是:多指向一的关系,有了此关系,加载多的时候可以将一加载上来

一对多维护的关系是:一指向多的关系,有了此关系,在加载一的时候可以将多加载上来

上一篇:SpringBoot 中使用 @Value 为 static 变量赋值


下一篇:Qt5.0.2无法发布问题