hibernate关联.ppt

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
hibernate关联概要1

Hibernate的关联映射 Hibernate的关联映射 数据对象间的关联关系有1:1、1:m、m:n 如以下4个类之间的关系如下: 这些类的实体之间存在级联 Hibernate的关联映射 关联关系有两个分类: (1)单向关系:只需单向访问关联端。 单向1-1 单向1-N 单向N-1 单向N-N (2)双向关系:关联的两端可以互相访问。 双向1-1 双向1-N 双向N-N Person.java public class Person { private int personid; private String name; private int age; private Address address; …… public void setAddress(Address address) { this.address = address; } public Address getAddress() { return this.address; } } Address.java public class Address { //标识属性 private int addressid; //地址详细信息 private String addressdetail; …… } Hibernate的关联映射 1、单向N-1关联 (1)无连接表的N-1关联 使用many-to-one元素。 many-to-one元素常用属性: name:该属性的名字 column:指定进行关联的外键列的列名 class:关联实体的全限定类名 cascade:指定哪些操作会从主表记录级联到子表记录 (2)有连接表的N-1关联 无连接表的Person.hbm.xml ?xml version=1.0 encoding=GBK? !DOCTYPE hibernate-mapping PUBLIC -//Hibernate/Hibernate Mapping DTD 3.0//EN /hibernate-mapping-3.0.dtd hibernate-mapping package=lee class name=Person id name=personid generator class=identity/ /id property name=name type=string/ property name=age type=int/ !-- 用于映射N-1关联实体,指定关联实体类为Address 指定外键列名为addressId,并指定级联全部操作 -- many-to-one name=address cascade=all class=Address column=addressId/ /class /hibernate-mapping PersonManager.java private void testPerson() { Session session = HibernateUtil.currentSession(); Transaction tx = session.beginTransaction(); Person p = new Person(); Address a = new Address(广州天河); p.setName(Yeeku); p.setAge(29); //设置Person和Address之间的关联关系 p.setAddress(a); session.persist(p); Address a2 = new Address(上海虹口); p.setAddress(a2); mit(); HibernateUtil.closeSession(); } 无连接表的单项N-1关联练习 (1)描述:多个学生选择同一门课程 (2)持久化类: Student:id,name Course:courseId,courseName (3)要求: 外键列名:courseId (4)插入记录 student表:1 Tom 2 2 Jerry 2 course表:1 Java 2 JSP 有连接表的Person.hbm.xml ?xml version=1.0 encoding=GBK? …… clas

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档