当前位置: 首页 > news >正文

大学生网站建设规划书深圳企业视频制作公司

大学生网站建设规划书,深圳企业视频制作公司,网站设计师培训班,wordpress精美网站Mybatis#xff1a;一对一查询映射处理 前言一、概述二、创建数据模型三、 问题四、解决方案1、方案一#xff1a;级联方式处理映射关系2、方案二#xff1a;使用association处理映射关系3、方案三#xff1a;分步查询 前言 本博主将用CSDN记录软件开发求学之路上亲身所得… Mybatis一对一查询映射处理 前言一、概述二、创建数据模型三、 问题四、解决方案1、方案一级联方式处理映射关系2、方案二使用association处理映射关系3、方案三分步查询 前言 本博主将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识有兴趣的小伙伴可以关注博主也许一个人独行可以走的很快但是一群人结伴而行才能走的更远 一、概述 MyBatis是一种流行的Java持久化框架它提供了灵活而强大的查询映射功能。在一些复杂的数据模型中一对一查询映射是一种常见的需求。本篇博客将详细介绍如何在MyBatis中处理一对一查询映射。 二、创建数据模型 假设我们有两张数据表员工表和部门表每个员工都只属于一个部门我们需要创建对应的Java数据模型。 Emp.java public class Emp {private Integer eid;private String empName;private Integer age;private String sex;private String email;private Dept dept;...}Dept.java public class Dept {private Integer did;private String deptName;private ListEmp emps;...}三、 问题 现在我们要查询员工信息以及员工所对应的部门信息我们应该如何做呢 四、解决方案 1、方案一级联方式处理映射关系 EmpMapper /*** description:获取指定员工的信息(包括部门)* author: Hey* date: 2022/7/4 8:58* param: [id]* return: com.ir.mybatis.pojo.Emp**/Emp getAllEmpAndDept(Param(eid) Integer eid); EmpMapper.xml resultMap idtitle1 typeEmpid propertyeid columneid/idresult propertyempName columnemp_name/resultresult propertyage columnage/resultresult propertysex columnsex/resultresult propertyemail columnemail/resultresult propertydept.did columndid/resultresult propertydept.deptName columndept_name/result /resultMapselect idgetAllEmpAndDept resultMaptitle1select * from t_emp left join t_dept on t_emp.did t_dept .did where t_emp.eid #{eid}/selectResultTest /*** description:获取指定员工的信息(包括部门)* author: Hey* date: 2022/7/4 8:56* param: []* return: void**/Testpublic void getAllEmpAndDept(){SqlSession sqlSession SqlSessionUtils.getSqlSession();EmpMapper mapper sqlSession.getMapper(EmpMapper.class);Emp emp mapper.getAllEmpAndDept(2);System.out.println(emp);//Emp{eid2, empName美羊羊, age32, sex女, email123qq.com}}2、方案二使用association处理映射关系 EmpMapper /*** description:获取指定员工的信息(包括部门)* author: Hey* date: 2022/7/4 8:58* param: [id]* return: com.ir.mybatis.pojo.Emp**/Emp getAllEmpAndDept(Param(eid) Integer eid); EmpMapper.xml resultMap idtitle1 typeEmpid propertyeid columneid/idresult propertyempName columnemp_name/resultresult propertyage columnage/resultresult propertysex columnsex/resultresult propertyemail columnemail/result!--association:处理多对一的映射关系property:需要处理多对的映射关系的属性名javaType:该属性的类型过程通过javaType运用反射确定其所有属性再将column一一准确赋值给指定的属性这样就得出了一个实体类对象再将这个对象赋值给property中的对象名--association propertydept javaTypeDeptid propertydid columndid/idresult propertydeptName columndept_name/result/association/resultMapselect idgetAllEmpAndDept resultMaptitle1select * from t_emp left join t_dept on t_emp.did t_dept .did where t_emp.eid #{eid}/selectResultTest /*** description:获取指定员工的信息(包括部门)* author: Hey* date: 2022/7/4 8:56* param: []* return: void**/Testpublic void getAllEmpAndDept(){SqlSession sqlSession SqlSessionUtils.getSqlSession();EmpMapper mapper sqlSession.getMapper(EmpMapper.class);Emp emp mapper.getAllEmpAndDept(3);System.out.println(emp);//Emp{eid3, empName懒洋洋, age34, sex男, email123qq.com}}3、方案三分步查询 mybatis-config.xml !--设置MyBatis的全局配置--settings!--将_自动映射为驼峰emp_name:empName--setting namemapUnderscoreToCamelCase valuetrue/!--开启延迟加载--setting namelazyLoadingEnabled valuetrue//settingsEmpMapper /*** description:通过分步查询查询员工以及员工所对应的部门信息* 分步查询第一步查询员工信息* author: Hey * date: 2022/7/4 9:41* param: [eid]* return: com.ir.mybatis.pojo.Emp**/Emp getEmpAndDeptByStepOne(Param(eid) Integer eid);EmpMapper.xml resultMap idempAndDeptByStepResultMap typeEmpid propertyeid columneid/idresult propertyempName columnemp_name/resultresult propertyage columnage/resultresult propertysex columnsex/resultresult propertyemail columnemail/result!--select:设置分步查询的sql的唯一标识namespace.SQLId或mapper接口的全类名.方法名column:设置分布查询的条件:根据员工的部门的did去查询该员工所属部门的信息fetchType:当开启了全局的延迟加载之后可通过此属性手动控制延迟加载的效果fetchTypelazy|eager:lazy表示延迟加载eager表示立即加载--association propertydeptselectcom.ir.mybatis.mapper.DeptMapper.getEmpAndDeptByStepTwocolumndid/association /resultMap!--Emp getEmpAndDeptByStepOne(Param(eid) Integer eid);--select idgetEmpAndDeptByStepOne resultMapempAndDeptByStepResultMapselect * from t_emp where eid #{eid}/selectDeptMapper /*** description:通过分步查询查询部门以及部门中所有的员工信息* 分步查询第二步根据did查询员工信息* author: Hey * date: 2022/7/4 9:42* param: [did]* return: java.util.Listcom.ir.mybatis.pojo.Emp**/ListEmp getDeptAndEmpByStepTwo(Param(did) Integer did);DeptMapper.xml !--Dept getEmpAndDeptByStepTwo(Param(did) Integer did);--select idgetEmpAndDeptByStepTwo resultTypeDeptselect * from t_dept where did #{did}/select ResultTest /*** description:通过分步查询查询部门以及部门中所有的员工信息* author: Hey * date: 2022/7/4 9:53* param: []* return: void**/Testpublic void testGetEmpAndDeptByStep(){SqlSession sqlSession SqlSessionUtils.getSqlSession();EmpMapper mapper sqlSession.getMapper(EmpMapper.class);Emp emp mapper.getEmpAndDeptByStepOne(3);System.out.println(emp);//Emp{eid3, empName懒洋洋, age34, sex男, email123qq.com}}
http://www.zqtcl.cn/news/38122/

相关文章:

  • 网站新站整站排名建设工程消防网站进入程序
  • 有哪些网站是可以做免费推广的上海网站制作工作室
  • 专门做女频的小说网站平台游戏
  • 哪里有网站建设公司品牌建设和渠道建设哪个更重要
  • 静态宠物网站设计论文网页搜索排名提升
  • 百度描述 网站帝国手机网站模板
  • 石家庄移动端网站建设专业推广企业网站公司
  • php语言做购物网站php做网站的重点
  • 有做浏览单的网站仿历史网站模板
  • 网站建设推广公司哪家权威网页紧急升级维护中升级
  • 大理建设学校官方网站网站开发软件最流行
  • 在centos做网站专业做网站开发费用
  • 网站建设培训个人互联网软件外包
  • 南阳网站怎么推广wordpress 首页登录注册
  • 个人网站建设 优帮云平台补单
  • 乌云网是个什么网站个人博客网站开发的背景
  • 前端做项目的网站138ip地址查询网站
  • 海城网站制作flash相册网站源码
  • 用axuer 做网站产品原型在凡科做网站编辑
  • 征婚网站 女 做茶叶生意网站美食建设图片
  • 菏泽网站建设菏泽校园推广方案经典范文
  • 网站登录后不显示内容wordpress首页文章并排
  • 织梦网站后台地址主要干啥
  • 开个做网站要多少钱外贸论坛买家信息网
  • 网站树状结构图怎么做名字logo设计在线生成
  • 怎么制作网站上传php网站开发的发展前景
  • 大型高迸发网站用什么语言做电子商务网站的建设和维护
  • 个人免费网站申请中国建设部网站官网
  • 怎么做一个商城网站天猫网站建设的目标
  • 网站开发软件英文版公司网站荣誉墙怎么做