~~~接着之前的Hibernate框架接着学习(上篇面试过后发现真的需要学习一下框架了,不然又被忽悠让去培训。)~~~

1:Hibernate的关联映射,存在一对多和多对一映射,多对多映射:

  1.1:一对多和多对一映射,举例说明:

     学生和老师:

       一个老师可以教多个学生 【一对多映射】

      多个学生可以被一个老师教【多对一映射】

    部门与员工:

      一个部门有多个员工【一对多映射】

      多个员工属于一个部门【多对一映射】

  1.2:多对多,举例说明:

    项目和开发员工:【双向一对多即多对多映射】

      一个项目有多个开发人员【一对多】

         一个开发人员参与多个项目【一对多】


2:一对多和多对一映射,理清以下思路就可以进行简单的开发了:

  2.1:首先导入hibernate框架所需要的包哦~~~

  2.2:由于是在hibernate.cfg.xml配置里面自动生成数据库和表,所以不用手动创建了

  2.3:进入正题,开发创建实体类;下面是两个实体类的关键点;

    Dept.java:

      注意private Set<Employee> emps;//部门对应多个员工,即一对多的关系

    Employee.java:

      private Dept dept;//员工和部门的关系

 1 package com.bie.po;
 2 
 3 import java.util.HashSet;
 4 import java.util.Set;
 5 
 6 /** 
 7 * @author BieHongLi 
 8 * @version 创建时间:2017年3月20日 上午9:45:21 
 9 * 部门的实体类
10 *     关键点,是通过部门实体类维护到员工的实体类
11 */
12 public class Dept {
13 
14     private int deptId;//部门编号
15     private String deptName;//部门名称
16     
17     private Set<Employee> emps;//部门对应多个员工,即一对多的关系
18     //private Set<Employee> emps = new HashSet<>();//方便赋值,这里可以直接创建实例化
19     
20     
21     public int getDeptId() {
22         return deptId;
23     }
24     public void setDeptId(int deptId) {
25         this.deptId = deptId;
26     }
27     public String getDeptName() {
28         return deptName;
29     }
30     public void setDeptName(String deptName) {
31         this.deptName = deptName;
32     }
33     public Set<Employee> getEmps() {
34         return emps;
35     }
36     public void setEmps(Set<Employee> emps) {
37         this.emps = emps;
38     }
39     
40     
41 }
View Code

相关文章: