ImageVerifierCode 换一换
格式:PPTX , 页数:42 ,大小:1.90MB ,
资源ID:10308746      下载积分:12 金币
验证码下载
登录下载
邮箱/手机:
图形码:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/10308746.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请。


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(2.SQL映射文件.pptx)为本站上传会员【精****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

2.SQL映射文件.pptx

1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,#,/42,SQL,映射,文件,线上线下,平台预习,2,/42,本章任务,完成超市订单系统,-,用户管理功能模块之用户的增删改查实现,3,/,42,本章目标,掌握通过,SQL,映射文件进行增删改查,掌握参数的使用,掌握,resultMap,了解,Cache,的使用,4,/,42,SQL,映射的,XML,文件,MyBatis 真正的强大在于映射语句,专注于,SQL,,功能强大,SQL映射的配置却是相当简单,SQL,映射文件的几个顶级元素,(,按照定义的顺序,),mapper,namespace,cache,配置

2、给定命名空间的缓存,cache-ref,从其他命名空间引用缓存配置,resultMap,用来描述数据库结果集和对象的对应关系,sql,可以重用的,SQL,块,也可以被其他语句引用,insert,映射插入语句,update,映射更新语句,delete,映射删除语句,select,映射查询语句,5,/,42,m,apper,元素,mapper,namespace,:命名空间,namespace,和子元素的,id,联合保证唯一,区别不同的,mapper,绑定,DAO,接口,namespace,的命名必须跟某个接口同名,接口中的方法与映射文件中,SQL,语句,id,一一,对应,select id=,g

3、etUserList,示例,6,/,42,select,7-1,select,是,MyBatis,中最常用的元素之一,select,语句有很多属性可以详细配置每一条语句,id,命名空间中唯一的标识符,接口中的方法与映射文件中的,SQL,语句,id,一一对应,parameterType,传入,SQL,语句的参数类型,resultType,SQL,语句返回值类型的完整类名或别名,演示示例,1,:根据用户名对用户表进行模糊查询,7,/,42,select 7-2,按条件查询用户表,若多条件情况下如何处理?,传入,多个参数进行入参,?,封装,成,User,对象进行入参?,提示,问题,8,/,42,se

4、lect 7-3,parameterType,基础数据类型,int,、,String,、,Date,等,只能传入一个,,通过,#,参数名,即可获取传入的值,复杂数据类型,Java,实体类、,Map,等,通过,#,属性名,或者,#map,的,keyName,即可获取传入值,演示示例,2,:改造用户表的查询操作,-,封装对象入参,9,/,42,select 7-4,按条件查询得到用户表列表,需要显示指定字段,并显示用户角色(中文表述),用户表中的,userRole,字段记录的是角色,id,,不是其对应的名称,如何解决?,修改,User,的属性,增加,userRoleName,属性,修改查询,SQL

5、语句,连表查询,resultMap-,自定义映射结果,问题,提示,10,/,42,select 7-5,resultMap,描述如何将结果集映射到,Java,对象,select u.*,r.roleName from smbms_user u,smbms_role r,where u.userName like CONCAT(%,#userName,%),and u.userRole=#userRole and u.userRole=r.id,一个外部,resultMap,的,id,,表示返回结果映射到哪一个,resultMap,上,从数据库中查询的列名或者别名,表示查询出来的属性对应的值赋

6、给实体对象的哪个属性,示例,演示示例,3,:使用,resultMap,实现用户信息查询,(,用户表和角色表查询,),11,/,42,select 7-6,resultType,:直接表示返回类型,基本数据类型,复杂数据类型,resultMap,:对外部,resultMap,的引用,应用场景:,数据库字段信息与对象属性不一致,复杂的联合查询,自由控制映射结果,二者不能同时存在,本质上都是,Map,数据结构,12,/,42,select 7-7,使用,resultMap,如何实现自由灵活的控制映射结果,从而达到只对关心的属性进行赋值填充?,resultMap,自动映射匹配前提:字段名与属性名一致,

7、resultMap,的自动映射级别,-,autoMappingBehavior,PARTIAL,(默认):自动匹配所有,禁止自动匹配,问题,分析,演示示例,3,:使用,resultMap,实现用户信息查询,(,用户表和角色表查询,),13,/,42,学员操作,实现订单表的查询,需求说明:,实现按条件查询订单表,查询条件如下,商品名称(模糊查询),供应商(供应商,id,),是否付款,查询结果列显示:订单编码、商品名称、供应商名称、账单金额、是否付款、创建时间,修改,Bill.java,,增加属性,providerName,编写,SQL,查询语句(连表查询),创建,resultMap-,自定义映射

8、结果,并在,select,中引用,完成时间:,30,分钟,练习,提示,14,/,42,共性问题集中讲解,常见问题及解决办法,代码规范问题,调试技巧,共性问题集中讲解,15,/,42,select-,小结,属性,描述,id,在命名空间中唯一的标识符,可以被用来引用这条语句,parameterType,将会传入这条语句的参数类的完全限定名或别名,resultType,从这条语句中返回的期望类型的类的完全限定名或别名。注意集合情形,那应该是集合可以包含的类型,而不能是集合本身。使用,resultType,或,resultMap,,但不能同时使用,resultMap,命名引用外部的,resultMap

9、flushCache,将其设置为,true,,不论语句什么时候被调用,都会导致缓存被清空。默认值:,false,useCache,将其设置为,true,,将会导致本条语句的结果被缓存。默认值:,true,timeout,这个设置驱动程序等待数据库返回请求结果,并抛出异常时间的最大等待值。默认不设置(驱动自行处理),fetchSize,这是暗示驱动程序每次批量返回的结果行数,statementType,STATEMENT,PREPARED,或,CALLABLE,的一种。让,MyBatis,选择使用,Statement,,,PreparedStatement,或,CallableStatemen

10、t,。默认值:,PREPARED,resultSetType,FORWARD_ONLY|SCROLL_SENSITIVE|SCROLL_INSENSITIVE,中的一种。默认是不设置(驱动自行处理),16,/,42,insert,元素,insert,id,parameterType,insert into smbms_user(userCode,userName,userPassword),values(#userCode,#userName,#userPassword),注意:,insert,、,update,、,delete,元素均没有,resultType,属性,!,示例,演示示例,4,

11、实现用户表的增加操作,17,/,42,学员操作,实现供应商表的增加,需求说明:,在上一个练习的基础上,实现供应商表的增加操作,insert,parameterType,:,Java,实体类,-Provider,DAO,层接口方法的返回类型:,int,需更新,createBy,和,creationDate,,,modifyDate,和,modifyBy,不需要更新,完成时间:,20,分钟,提示,练习,18,/,42,共性问题集中讲解,常见问题及解决办法,代码规范问题,调试技巧,共性问题集中讲解,19,/,42,update,元素,2-1,update,id,parameterType,upda

12、te smbms_user set userCode=#userCode,userName=#userName,userPassword=#userPassword where id=#id,演示示例,5,:实现用户表的修改操作,示例,20,/,42,学员操作,实现供应商表的修改,需求说明:,在上一个练习的基础上,实现根据供应商,id,修改供应商信息的操作,update,parameterType,:,Java,实体类,-Provider,DAO,层接口方法的返回类型:,int,需更新,modifyDate,和,modifyBy,,,createBy,和,creationDate,不需要更新,

13、完成时间:,20,分钟,提示,练习,21,/,42,共性问题集中讲解,常见问题及解决办法,代码规范问题,调试技巧,共性问题集中讲解,22,/,42,update,元素,2-2,需求说明,实现超市账单管理系统,-,修改个人密码功能,分析,传入参数,(,多个,),:用户,id,和新密码,使用注解,Param,来传入多个参数,超过,3,个以上的参数最好封装成对象入参,参数固定的业务方法,最好使用多参数入参,演示示例,6,:实现修改当前用户密码的功能,经验,23,/,42,delete,元素,delete,id,parameterType,delete from smbms_user where id

14、id,演示示例,7,:根据用户,id,删除用户信息,示例,24,/,42,学员操作,根据,id,删除供应商信息,需求说明:,在上一个练习的基础上,实现根据供应商,id,删除供应商信息的操作,delete,Param,注解参数,DAO,层接口方法的返回类型:,int,完成时间:,10,分钟,提示,练习,25,/,42,共性问题集中讲解,常见问题及解决办法,代码规范问题,调试技巧,共性问题集中讲解,26,/,42,小结,DAO,层接口方法常见的返回类型,Java,对象、,Map,、,List,等复杂数据类型,int,(,增删改,),更新操作时,影响的数据行数,MyBatis,参数入参,Para

15、m,注解参数,封装成对象入参,技巧,27,/,42,resultMap 5-1,resultMap,属性,id,:,resultMap,的唯一标识,type,:,Java,实体类,resultMap,子元素,id,一般对应数据库中该行的主键,id,,设置此项可提高,MyBatis,性能,result,映射到,JavaBean,的某个“简单类型”属性,association,映射到,JavaBean,的某个“复杂类型”属性,比如,JavaBean,类,collection,映射到,JavaBean,的某个“复杂类型”属性,比如集合,28,/,42,resultMap 5-2,associatio

16、n,复杂的类型关联,,一对一,内部嵌套,映射一个嵌套,JavaBean,属性,属性,property,:映射数据库列的实体对象的属性,javaType,:完整,Java,类名或者别名,resultMap,:引用外部,resultMap,子元素,id,result,property,:映射数据库列的实体对象的属性,column,:数据库列名或者别名,演示示例,8,:根据用户角色,id,获取用户列表,29,/,42,resultMap 5-3,上一个例子中,“userRoleResult”,联合一个,association,结果映射来加载,User,实例,,那么,association,的,rol

17、e,结果映射是否可复用?,resultMap,演示示例,9,:根据用户角色,id,获取用户列表,-resultMap,问题,提示,30,/,42,学员操作,实现订单表的查询,(association),需求说明:,实现按条件查询订单表,查询条件如下:,商品名称(模糊查询),供应商(供应商,id,),是否付款,查询结果列显示:订单编码、商品名称、供应商编码、供应商名称、供应商联系人、供应商联系电话、订单金额、是否付款,resultMap,中使用,association,子元素完成内部嵌套,修改,Bill.java,,增加复杂类型属性:,Provider,编写,SQL,查询语句(连表查询),创建,

18、resultMap-,自定义映射结果,并在,select,中引用,完成时间:,20,分钟,练习,提示,31,/,42,共性问题集中讲解,常见问题及解决办法,代码规范问题,调试技巧,共性问题集中讲解,32,/,42,resultMap 5-4,collection,复杂类型集合,,一对多,内部嵌套,映射一个嵌套结果集到一个列表,属性,property,:映射数据库列的实体对象的属性,ofType,:完整,Java,类名或者别名,(,集合所包括的类型,),resultMap,:引用外部,resultMap,子元素,id,result,property,:映射数据库列的实体对象的属性,column,

19、数据库列名或者别名,演示示例,10,:获取指定用户的相关信息及其地址列表,33,/,42,resultMap 5-5,如何提高结果映射的可重用性?,collection,的,resultMap,属性,演示示例,11,:获取指定用户的相关信息及其地址列表,-resultMap,问题,分析,34,/,42,学员操作,获取供应商及其订单列表,(collection),需求说明:,根据指定的供应商(,id,)查询出其相关信息以及其下所有的订单列表,查询结果列显示:供应商,id,、供应商编码、供应商名称、供应商联系人、供应商联系电话、订单列表信息(订单编码、商品名称、订单金额、是否付款),result

20、Map,中使用,collection,子元素完成内部嵌套,修改,Provider.java,,增加集合类型属性:,List billList,编写,SQL,查询语句(连表查询),创建,resultMap-,自定义映射结果,并在,select,中引用,完成时间:,20,分钟,提示,练习,35,/,42,共性问题集中讲解,常见问题及解决办法,代码规范问题,调试技巧,共性问题集中讲解,36,/,42,小结,在,association,和,collection,两个演示示例的基础上进行测试,在控制台输出没有在,resultMap,中进行匹配的属性,并观察输出结果,resultMap,自动映射,(aut

21、oMappingBehavior),的三个匹配级别,NONE,禁止自动匹配,PARTIAL,(默认),自动匹配所有属性,,内部嵌套除外,FULL,自动匹配所有,答疑解惑,演示示例,12,:,resultMap,自动映射的匹配级别,知识分享,37,/,42,缓存,MyBatis,缓存,一级缓存,二级缓存,二级缓存的配置,MyBatis,的全局,cache,配置,在,Mapper XML,文件中设置缓存,默认情况下是没有开启缓存的,在,Mapper XML,文件配置支持,cache,后,如果需要对个别查询进行调整,可以单独设置,cache,38,/,42,总结,2-1,mapper,:,namespace,s,elect,id,parameterType,resultType/resultMap,insert,、,update,、,delete,id,parameterType,39,/,42,总结,2-2,resultMap,id,type,result,association,collection,40,/,42,问题及作业,集中问题,&,课后作业,41,/42,扫我有更多精彩课程呦,

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服