guokehua(@yahoo.com.cn oy Java 19 Hibernate表间关联 2008-3-10 郭克华EE框架实战教学视频
2008-3-10 1 oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 19Hibernate Hibernate表间关联
guokehua(@yahoo.com.cn oy yavar PO 映射文件一配置文件 1010 HibernateAPl支持 DB 008-3-10 郭克华J2EE框架实战教学视频
2008-3-10 2 oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 PO 映射文件 配置文件 HibernateAPI支持 DB
guokehua(@yahoo.com.cn oy Java! 对一关联:。 ne-to-one 题目:校长和学校是一一对应关系: I T SCHOOL(SID, SNAME),T HEADER(HID, SID HNAME).要求利用 Hibernate,实现:对学校的信 1010 息进行查询的时候,无需另外查询就可以得到校长 的信息 对一关联。 步骤: 1:建立POJO: Schoo1.java, Header.java,建 立 Hibernate配置文件,将两个hbm文件与其绑定 >2:在 Schoo1java里面建立一个 Header类型的 属性 008-3-10 郭克华J2EE框架实战教学视频
2008-3-10 3 oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 一对一关联:one-to-one ¾ 题目:校长和学校是一一对应关系 题目:校长和学校是一一对应关系: T_SCHOOL(SID,SNAME),T_HEADER(HID,SID, T_SCHOOL(SID,SNAME),T_HEADER(HID,SID, HNAME). HNAME).要求利用Hiberbate Hiberbate,实现:对学校的信 实现:对学校的信 息进行查询的时候,无需另外查询就可以得到校长 息进行查询的时候,无需另外查询就可以得到校长 的信息 ¾ 一对一关联。 ¾ 步骤: ¾ 1:建立POJO:School.java,Header.java, POJO:School.java,Header.java,建 立Hibernate Hibernate配置文件,将两个 配置文件,将两个hbm文件与其绑定 ¾ 2:在School.java School.java里面建立一个Header类型的 属性
guokehua(@yahoo.com.cn oy Java! 对一关联:。 ne-to-one 3:在 Schoo1的hbm文件中增加: <one-to-one 1010 name=" header属性名称 o CIassheader 属性类〃 cascade=a11|none(是否级联) 定要搞清楚主动方和被动方!! 008-3-10 郭克华J2E框架实战教学视频
2008-3-10 4 oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 一对一关联:one-to-one ¾ 3:在School的hbm文件中增加: ¾ 一定要搞清楚主动方和被动方!! 一定要搞清楚主动方和被动方!!
guokehua(@yahoo.com.cn oy Java! 对多关联: one-to-many 题目:班级和学生是一对多关系: T BANJI(BId, ROOM),T STUDENT (SID, BId, S I NAME).要求利用 Hibernate,实现:对班级的信 息进行查询的时候,无需另外查询就可以得到学生 的信息 >步骤 >1:建立 POJO: Banji.java, Student,java,建 立 Hibernate配置文件,将两个hbm文件与其绑定 12:在Bn,7a里面建立一个8e类型的属性, 准备装学生 008-3-10 郭克华J2EE框架实战教学视频
2008-3-10 5 oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 一对多关联:one-to-many ¾ 题目:班级和学生是一对多关系 题目:班级和学生是一对多关系: T_BANJI T_BANJI(BID,ROOM),T_STUDENT(SID,BID,S BID,ROOM),T_STUDENT(SID,BID,S NAME).要求利用Hiberbate Hiberbate,实现:对班级的信 实现:对班级的信 息进行查询的时候,无需另外查询就可以得到学生 息进行查询的时候,无需另外查询就可以得到学生 的信息 ¾ 步骤: ¾ 1:建立POJO:Banji.java,Student.java, .java,Student.java,建 立Hibernate Hibernate配置文件,将两个 配置文件,将两个hbm文件与其绑定 ¾ 2:在Banji.java里面建立一个Set类型的属性, 准备装学生
guokehua(@yahoo.com.cn oy Java! 对多关联: one-to-many 3:在 BanJi的hbm文件中增加: 1 008-3-10 郭克华J2EE框架实战教学视频
2008-3-10 6 oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 一对多关联:one-to-many ¾ 3:在BanJi的hbm文件中增加:
guokehua(@yahoo.com.cn oy Java! 对多关联:问题 表格配置了主键外键关系,单纯一对多有bug,必 须还要配置多对一:配置多对一关联 (1)在 Student内增加 Banji属性 1010 (2) student.hbm.xm1内增加: many-to- one name=N属性名称" c1ass=N属性类型" 0 insert=false update="false" cascade=none cO1umn=N对应列名"/ >(3)在 Banji hbm,xm内set标签内增加 Inverse= true表示它是被动方 >任给一个学生,能够得知他所在班级 008-3-10 郭克华J2EE框架实战教学视频
2008-3-10 7 oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 一对多关联:问题 ¾ 当表格配置了主键外键关系,单纯一对多有 当表格配置了主键外键关系,单纯一对多有bug,必 须还要配置多对一:配置多对一关联 须还要配置多对一:配置多对一关联 ¾ (1)在Student Student内增加Banji属性 ¾ (2)Student. Student.hbm.xml内增加: ¾ (3)在Banji.hbm.xml内set标签内增加: inverse= inverse=“true“表示它是被动方 表示它是被动方 ¾ 任给一个学生,能够得知他所在班级 任给一个学生,能够得知他所在班级
guokehua(@yahoo.com.cn 了y多对多关联 many-to-many 题目:课程和老师是多对多关系 T COURSE (CID, CNAME),T TEACHER (TID, TNA ME).要求利用 Hibernate,实现:对课程的信息 进行查询的时候,无需另外查询就可以得到老师的 信息,对老师信息查询的时候也能知道他教了哪些 课程 >首先建立第三个表:T_ JLAOKE(TD,CID) 步骤: 1:建立POJO: Course.java, Teacher.java,建 立 Hibernate配置文件,将两个hbm文件与其绑定 >2:在 Course,java里面建立一个set类型的属性 准备装老师;在 Teacher.java里面建立一个Set类 型属性,准备装课程 008-3-10 郭克华J2EE框架实战教学视频
2008-3-10 8 oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 多对多关联:many-to-many ¾ 题目:课程和老师是多对多关系 题目:课程和老师是多对多关系: T_COURSE(CID,CNAME),T_TEACHER(TID,TNA T_COURSE(CID,CNAME),T_TEACHER(TID,TNA ME).要求利用Hiberbate Hiberbate,实现:对课程的信息 实现:对课程的信息 进行查询的时候,无需另外查询就可以得到老师的 进行查询的时候,无需另外查询就可以得到老师的 信息,对老师信息查询的时候也能知道他教了哪些 信息,对老师信息查询的时候也能知道他教了哪些 课程 ¾ 首先建立第三个表: 首先建立第三个表:T_JIAOKE(TID,CID) T_JIAOKE(TID,CID) ¾ 步骤: ¾ 1:建立POJO:Course.java,Teacher.java, POJO:Course.java,Teacher.java,建 立Hibernate Hibernate配置文件,将两个 配置文件,将两个hbm文件与其绑定 ¾ 2:在Course.java Course.java里面建立一个Set类型的属性, 准备装老师;在Teacher.java Teacher.java里面建立一个Set类 型属性,准备装课程 型属性,准备装课程
guokehua(@yahoo.com.cn 了y多对多关联: many -to-many 3:两个hbm文件中增加: lolo 008-3-10 郭克华J2EE框架实战教学视频
2008-3-10 9 oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 多对多关联: many -to-many ¾ 3:两个hbm文件中增加: