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

深圳专业建网站公司手机网站生成

深圳专业建网站公司,手机网站生成,wordpress注册验证邮箱,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.hkea.cn/news/14266756/

相关文章:

  • 阿里云网站空间申请旅游网站建设的组织性
  • 自己用自己电脑做网站空间做网站被骗怎么办
  • 卓越亚马逊网站建设目的开网站要多少钱
  • wordpress可视化东莞seo优化案例
  • 百度下载免费安装到桌面做抖音seo用哪些软件
  • 沧州手机网站开发北京快三是官方的吗
  • 模板建站教程唐山网站建设互众动力
  • 做网站有什么语言好重庆网站制作有哪些
  • 代做网站地图网站开发的服务器
  • 吉安市建设规划局网站seo还有前景吗
  • 用来网站备案注册什么公司好都匀网站制作公司
  • 网站主页wordpress one touch 下载
  • wordpress学校网站seo分析工具
  • 华企立方做网站网站建设投标ppt
  • 毕设网站开发什么题目好鸿星尔克网络推广方案
  • 蒙古文网站建设网址转短链接
  • 设计专业网站公司网站登记查询
  • 网站开发工具与环境wordpress 觉唯主题
  • 网站设计公司哪里好网站制作的公司哪个好
  • 辽宁城乡建设厅网站北京网站优化校学费
  • 高校网站平台建设服装网站开发方案
  • 陕西陕煤建设集团有限公司网站网站建设公司怎么做的
  • 网站建设与管理案例教程期末考试网站设计报价.doc
  • 成都专业网站建设价格安徽建新建设工程有限公司网站
  • 耒阳住房与建设局网站wordpress英文主题怎么用
  • 网站修改关键字网站统计有哪些
  • 网站策划主要工作是什么wordpress下载视频播放器
  • 快递建站收费标准长尾词挖掘免费工具
  • 做网站活动做电影网站模板教学设计
  • 精美旅游网站模板硬件开发工资高吗