- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE 7 项目:基于Struts2+Hibernate的学生信息管理系统 第三讲——Hibernate框架实现多表一对多查询 工作任务:使用Struts2和Hibernate实现根据班级号查询学生信息的功能。 知识点: 什么是一对多关系? 关系数据库中两个表之间的一种关系,该关系中第一个表中的单个行可以与第二个表中的一个或多个行相关,但第二个表中的一个行只可以与第一个表中的一个行相关。 实例解释: 首先一对多不是一个表中的一个列对应另一个表中的多个列,列是不能够一对多的!这里的一对多是是指行的对应! 例如CLASS表中的班级列CLASSID对应于STUDENT表中的班级列CLASSID,当CLASS表中的2班的CLASSID改成4,STUDENT表中所有原来CLASSID为2的学生的CLASSID都改成了4。但反过来,想要把CLASS表中的CLASSID为2的其中一个学生CLASSID改为4,在不改动主键表的情况下是不行的,说明外键是受主键约束的。 命名探究: 一对多关系,一般是一个表的主键对应另一个表的非主键,主键的值是不能重复的,而非主键值是可以重复的,一个主键值对应另一个表的非主键的值,那么就只有一个值对一个值或一个值对多个值两种可能,故称一对多。而在一对一关系中,一般是主键对应主键,那么显然就只有一个值对一个值的可能,故称一对一。 单向关联 单向的一对多关系只需在一方进行映射配置,例如: 在以上映射文件中,property元素的insert属性表示被映射的字段是否出现在SQL的INSERT语句中;update属性表示被映射的字段是否出现在SQL的UPDATE语句中。 set元素描述的字段(本例中为orders)对应的类型为java.util.Set,它的各个属性的含义如下: name:字段名;本例的字段名为orders,它属于java.util.Set类型。 table:关联表名;本例中,orders的关联数据表名是orders。 lazy:是否延迟加载;lazy=false 表示立即加载。 inverse:用于表示双向关联中的被动的一端。inverse的值为false的一方负责维护关联关系。默认值为false。本例中Customer将负责维护它与Orders之间的关联关系。 cascade:级联关系;cascade=all表示所有情况下均进行级联操作,即包含save-update和delete 操作。 sort:排序关系,其可选取值为:unsorted(不排序),natural(自然排序),comparatorClass(由某个实现了parator接口的类型指定排序算法)。 key子元素的column 属性指定关联表(本例中为orders表)的外键。 one-to-many子元素的class 属性指定了关联类的名字。 任务实施: 步骤1、在学生信息管理系统的基础上增加,代码段如下: 步骤2、在数据库中增加数据表class class表 步骤3、在工程中src\PO目录下增加班级实体类Clazz和对应的映射文件Clazz.hbm.xml 步骤4、在工程中src\Dao目录下创建类ClazzDao,在类中新建根据班级id查询学生信息的方法findStudentByClazzId 步骤5、在hibernate.cfg.xml文件中的session-factory节点中加入实体类的映射文件 步骤6、在该工程src\studentAction创建类ClazzAction 步骤7、完成最终的studentmanage.jsp页面,创建失败页面error.jsp 步骤8、修改struts.xml文件 任务拓展: 改造注册功能,增加“省份”信息,信息来源于数据库中省份表的内容。这样,在进行注册信息查询时,就会涉及两张表(省份表与用户表一对多关系)的查询,本任务要求在查询页面中输入省份名这个条件查询出属于该省份的所有注册用户。
您可能关注的文档
- 2018天南地北话美食 华南美食 碗仔翅.docx
- 2018天南地北话美食 华中美食 荆州鱼糕.docx
- 2018天南地北话美食 华中美食 热干面.docx
- 2018天南地北话美食 西北美食 尕面片.docx
- 2018天南地北话美食 西南美食 毛血旺.docx
- 2018天南地北话美食 西南美食 泡椒板筋.docx
- 2019食品营养与检测专业 社会培训 食品学院举办“人体成分分析与膳食营养指导”社会服务活动.docx
- ArcGIS软件应用 ArcGIS和其他格式交换 GPS数据转要素点.docx
- ArcGIS软件应用 ArcGIS和其他格式交换 MapGIS矢量转ArcGIS .docx
- ArcGIS软件应用 ArcGIS和其他格式交换 TEXT数据转ArcGIS数据.docx
- Java程序基础 JDK的安装与配置 1.2 JDK的安装与配置.docx
- Java程序基础 一维数组 一维数组.docx
- K101 分析化学 W1307溶液的配制 W1307溶液的配制-2-微课件说明(此处由做好的微课PPT替换).docx
- K101 分析化学 W2301有机物的鉴定 WB01 有机分析.docx
- K103 微生物学与操作技术 W4002病毒的增殖 W4002病毒的增殖-4 -微教材.docx
- K202 食品标准与法规 W1302食品违法案例分析----地沟油违法案例分析 W1302地沟油违法案例分析-4-微教材.docx
- K207 农产品质量安全检测技术 W2301 镉的检测特点 KJ13 食品中镉的检测.docx
- K208 食品质量安全检测技术 W5404 HPLC-UV检测糖果中色素的含量 W5404HPLC-UV检测糖果中色素的含量-4-微教材.docx
- K210 食品微生物检验技术、K209 农产品微生物检验技术 W4403单增李斯特氏菌检验—检验操作程序及要点、W4403单增李斯特氏菌检验—检验操作程序及要点 W4403单增李斯特氏菌检验—检验操作程序及要点-4-微教材.docx
- K212 食品快速检测技术 W4101 酱油中氨基酸态氮检测操作 WB04 酱油中氨基酸态氮检测操作-脚本.docx
最近下载
- 教案:ABB[a]-J-8ABB机器人高级编程.docx VIP
- 中国慢性冠脉综合征患者诊断及管理指南2024版解读.pptx
- 优秀工程项目管理经验分享.pptx VIP
- JGJT117-2019民用建筑修缮工程查勘与设计标准.docx VIP
- 2021年5月江苏省苏州工业园区初三调研(中考一模)英语试卷及答案.pdf VIP
- 【PDF】2022 年职业教育国家级教学成果奖申报.pdf VIP
- 电机基础知识入门 [(日)井出万盛 著] 2012年_部分10.pdf VIP
- 湘教版七年级地理上册第三章第二节气温和降水课件(共27张PPT)讲解.ppt VIP
- 科研项目中期检查报告书.docx VIP
- 丹江口水库现代化运行管理矩阵构建实践.docx VIP
文档评论(0)