Hibernate中cascade与inverse属性详解.doc

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

Hibernate中cascade与inverse属性详解关于Hibernate中 cascade 与 inverse 的理解。 您买的Hibernate书是哪一本呢? 孙卫琴的精通Hibernate,还是 深入浅出Hibernate还是那本。。。 我是两本都买了,总体来说还可以,但是,有的地方讲的比较书面化,比如inverse这属性。 在学习Hibernate的过程中最不好理解的就是这两个属性了。 (我当初学习Hibernate的时候,发现网上介绍这两个属性的文章倒是不少,但是,居然有好多都是转帖。。。还有的就是 照书搬~~-_-!!!)。。。 据个例子:书上说inverse=false时,由主控方维持关系。。。 由于我也是初学者。。。再加上语文水平偏低。。。不理解“维持关系是啥意思”囧~ 提示: (1)如果:您不了解Hibernate的one-to-many或many-to-one的概念。 (2)如果:你不了解Hibernate的“自由态”“持久态”“游离态”的概念。 (3)如果:您不了解Hibernate中的“脏数据”的概念。 (4)如果:您对Hibernate中Session缓存,没有初步了解的话。 (在Hibernate中调用save进行存储数据的时候,并不是马上就对数据库进行insert操作,而是会将其“数据对象(vo)”纳入Hibernate的Session缓存。) 在上面的4条提示中,如果您对其中的某一条,不是很清楚的话。希望请先了解有关知识。 否则,可能您将 “无法或很难”理解 cascade 或 inverse 这2个属性。 首相,cascade 与 inverse 这两个属性,其实是完全不同的两个东西,想要了解他们各自的“用途与区别”,详见如下介绍: 这里有两个表: (1)class?? (班级表) 相应字段: cid??? varchar(32) 主键 not-null (班级id) cname varchar(16)????? not-null (班级名称)?? (2)student (学生表) 相应字段: sid??? varchar(32) 主键 not-null (学生id) sname varchar(16)????? not-null (学生姓名) class_id varchar(32)?? not-null (学生所属班级) 一个班级(class)对应多个学生(student),所以班级表(class)就是“one-to-many”端 反之student就是many-to-one //--------Class类的代码-------- public class Class implements..... { private cId = ; private cName = ; private students = java.util.HashMap(); // 省略对应的 geter setter } //--------Class.hbm.xml-------- hibernate-mapping class name=lcx.vo.Class table=class ?? catalog=demo ?? id name=cid type=java.lang.String ??? column name=cid length=32 / ??? generator class=uuid.hex / ?? /id ?? property name=name type=java.lang.String ??? column name=cname length=16 not-null=true / ?? /property ?? ?? set name=students table=student cascade=save-update ??? key column=class / ??? one-to-many class=lcx.vo.Student / ?? /set /class /hibernate-mapping //--------Student类的代码;******* public class Student implements..... { private sId = ; private sName = ; private Class class = null; // 省略对应的 geter setter } // Student.hbm.xml hibernate-mapping class name=lcx.vo.Student table=student catalog=demo ?? id name=cid type=java.lang.String ??? co

文档评论(0)

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

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

版权声明书
用户编号:7065136142000003

1亿VIP精品文档

相关文档