网站建设与维护试卷做网站 十万

news/2025/9/24 20:48:50/文章来源:
网站建设与维护试卷,做网站 十万,张家界工程建设信息网站,互联网保险和线下保险的区别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.mzph.cn/news/916222.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

教育网站开发用例图宁波建设网表格

我的方案如下:>单击按钮时,客户端将向服务器端发送请求>一旦服务器端收到请求,它将向远程服务器发送另一个请求以获得结果>一旦响应到来,服务器端应该回应客户端的响应.客户$.post(login_server.php{act:"post",phone:phone,passwords:passwords…

品牌网站建设S苏州未来产品设计

目录 uni-app 项目目录结构 生命周期 路由 路由跳转 页面栈 条件编译 文本渲染 样式渲染 条件渲染 遍历渲染 事件处理 事件修饰符 uni-app 项目目录结构 组件/标签 使用(类似)小程序 语法/结构 使用vue 具体项目目录如下: 生命…

李之一的Java第一作

李之一的Java第一作package com.lixuan.houhou; public class SxisuArray { public static void main(String[] args) { //稀疏数组 :创建一个二维数组11*11 0:没有棋子 1:黑棋 2:白棋 int[][] array1 = new int…

网站在线优化工具珠海百度seo

上期我们讲了面向对象的一些基本信息&#xff0c;这期让我们详细的了解一下 一、面向对象—类 1、PHP类的定义语法&#xff1a; <?php class className {var $var1;var $var2 "constant string";function classfunc ($arg1, $arg2) {[..]}[..] } ?>2、解…

2025.9.24 闲话:Lucas 定理究极证明

小粉兔介绍了一种 Lucas 定理的超级简洁形象的证明,至少是我见过的最简洁的证明。 前置知识:二项式定理。 所用的特殊记号:艾弗森括号、系数提取符 / 系数算子。 Lucas 定理内容: \[\binom{n}{m} \equiv \binom{\l…

打折网站运营思路网站策划的工作要求

变量 变量就像在数学中学习的 x&#xff0c;y 一样&#xff0c;可以直接声明一个变量&#xff0c;并利用这些变量进行基本的运算&#xff0c;声明变量的格式为&#xff1a; 数据类型 变量名称 初始值;&#xff08;其中初始值可以不用在定义变量时设定&#xff09; 是赋值操作…

Are English people good or bad

No one is omniscient and omnipotent to get all of the sample space of the world, so any observation must be incomplete. Singaporeans also speak English. Also judged from young memory, the English can n…

Lampiao靶场渗透wp-脏牛提权

nmap扫描端口 nmap -p- 192.168.111.100 -T4开放三个端口,对80端口进行访问没有什么信息,继续访问1898端口 dirsearch -u http://192.168.111.100:1898/ 直接进行fuzz比较多有用的信息,一个一个分析,由于我们得到了…

画矩形

//题意:根据参数,画出矩形,输入一行, //包括四个参数:前两个参数为整数,依次代表矩形的高和宽(高不少于3行不多于10行,宽不少于5列不多于10列);第三个参数是一个字符,表示用来画图的矩形符号;第四个参数为…

NOIP 模拟赛八

构造场A. \(\oplus\) 有一个很好的性质,操作两次相当于没变。 考虑增量构造。 x y z 变成 x x c 。 x y^z y^z x^y^z y^z x^y^z x x x^y^z \(3\) 次操作做到。 最后会剩下 \(n\) 无法操作,判断此时是否合法,如果否,…

第三篇

今天是9月24日,今天上了离散数学,学了新知识,还学了马克思原理,知识库又丰富了。

基于cloacked-pixel隐写工具爆破项目

cloacked-pixel-break cloacked-pixel-break基于https://github.com/livz/cloacked-pixel 二次开发项目 项目地址 https://github.com/Alexander17-yang/cloacked-pixel-break移除了旧python2的脚本相关限制,使用pyth…

如何做全网影视网站手套外包加工网

Reactor 是一个基于响应式编程的库&#xff0c;主要用于构建异步和事件驱动的应用程序。Reactor 提供了丰富的 API&#xff0c;包括创建、转换、过滤、组合等操作符&#xff0c;用于处理异步数据流。以下是一些 Reactor 的主要 API 示例&#xff1a; pom依赖 <dependencyMan…

随便写的

redis高可用性 一台redis服务器:内存16g,一个进程挂了--------->redis服务挂-------------------->系统不可用 那么就会导致项目不可用 ![shuaikun](C:\Users\86135\Pictures\Camera Roll\蝴蝶刃2.jpg) 避免r…

Bcliux-docker-nacos2.2.0升级至2.2.3版本

Linux 系统版本:Redhat7.9IP:192.158.0.3第一步:备份nacos已有第二步:关停已有nacos[test@01 ~/nacos]$ sudo docker stop 0667969d2570第三步:修改镜像信息sudo docker tag f151dab7a111 nacos_x:2.2.3第四部:复…

免费网站制作视频教程成立公司股权怎么分配

详见&#xff1a;张鑫旭 CSS3 pointer-events:none应用举例及扩展 pointer-events:none &#xff0c;可以使事件穿透&#xff0c; 如&#xff1a; 2 覆盖在 1 上面。 给 2 设置 pointer-events:none&#xff1b;那么点击在 2 上将无效&#xff0c; 可以直接触发 1 上的事件 转载…

社交网络架构。京东场景题:亿级用户100Wqps 社交关系如何设计?如何查看我的关注,关注我的?

本文 的 原文 地址 原始的内容,请参考 本文 的 原文 地址 本文 的 原文 地址 尼恩说在前面: 最近大厂机会多了, 在45岁老架构师 尼恩的读者交流群(50+)中,最近有小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极…

go 面试题

go中发生panic的场景:数组/切片越界 空指针调用。比如访问一个 nil 结构体指针的成员 过早关闭 HTTP 响应体 除以 0 向已经关闭的 channel 发送消息 重复关闭 channel 关闭未初始化的 channel 未初始化 map。注意访问…

事件和图形界面(暂未完成)

事件: 注:动作监听鼠标时只能监听单击 键盘只能监听空格键