hibernate一对多、一对一、多对多映射之xml篇

hibernate一对多、一对一、多对多映射之xml篇

ID:14269370

大小:73.00 KB

页数:6页

时间:2018-07-27

hibernate一对多、一对一、多对多映射之xml篇_第1页
hibernate一对多、一对一、多对多映射之xml篇_第2页
hibernate一对多、一对一、多对多映射之xml篇_第3页
hibernate一对多、一对一、多对多映射之xml篇_第4页
hibernate一对多、一对一、多对多映射之xml篇_第5页
资源描述:

《hibernate一对多、一对一、多对多映射之xml篇》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一、一对多/多对一1.确定谁是一方,谁是多方。某表的主键在另一表中为外键,则某表为一方。如学生和班级的对应关系,一个班级对应多个学生,所以班级为一方,学生为多方。2.一方和多方po中部分代码的书写ClassInfo一方:set<多方类型>的属性代码如:privateSetstuSet;Student多方:一方类型的属性注意:不写外键字段。代码如:privateClassInfoclassInfo;3、配置ClassInfo一方:子元素:

2、/>Student多方:4、测试添加记录时的dao一部分代码ClassInfoc=newClassInfo();c.setCname("aaa");Students=newStudent();s.setStuName("gsc");s.setAge(12);s.setEmail("gsc@124.com");SetstuSet=newHashSet

3、();stuSet.add(s);c.setStuSet(stuSet);Sessionsession=HibUtil.getSession();Transactiontx=session.beginTransaction();session.save(c);tx.commit();session.close();二一对一1.外键关联:一对多的基础上在外键字段上加个唯一约束构成1对1的关系。1.1确定谁是一方,谁是多方。因为是一对一的关系,所以任何一方是一方或多方都可以,但是当选定哪一方是一方,哪一方是多方后,配置信息就必须按照一方和多方

4、的信息分别去配置1.2po:双方各有一个对方类型的属性po中的部分代码Address类中:privateCompanycompany;Company类中:privateAddressaddress;1.3配置一方:多方:如选择Address为一方,Company为多方

5、f="companyId"cascade="all">1.4测试添加记录时的dao一部分代码Companyc=newCompany();c.setCompanyName("苹果");Addressa=newAddress();a.setAddressName("美国");//c.setAddress(a);//上边的注释的代码可以不写,

6、但下边一行的代码必须写,如果不写的话,虽然多方的记录也被添加但外键值为空a.setCompany(c);Sessionsession=HibUtil.getSession();Transactionts=session.beginTransaction();session.save(a);ts.commit();session.close();1.主键关联:双方一对一关系的数据保证主键值一致即可。2.1都是一方2.2po:双方各有一个对方类型的属性,并且生成的两个表主键值相同po中的部分代码Man类中:privateIntegermarriageId;pr

7、ivateWomanwoman;Woman类中privateIntegermarriageId;privateManman;其中生成的两个表主键相同,是marriageId属性对应的column字段1.3配置主键生成方:主键采用自定义或者序列都行。如:Man主键seq_tab_man

8、--一方配置-->

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。