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

Mybatis分页查询主从表

 先主查询,再关联子查询,不影响分页效果,否则子查询也会参与分页。

    <resultMap id="Hdr" type="com.Hdr"><id column="crh_id" property="id" javaType="int"/><collection property="DtlList" select="queryAllRmdDetail" column="crh_id" fetchType="eager"></collection></resultMap>
    <resultMap id="Dtl" type="com.Dtl"></resultMap>   

主查询: 

 <select id="queryByCondition"  parameterType="String" resultMap="Hdr"></select>

在主查询后,通过传入主键id进行关联子查询:

    <select id="queryAllDetail" parameterType="int" resultMap="Dtl">SELECT * FROM biz_dtl WHERE crh_id = #{id}</select>

主查询的结果是List,以及每一条记录的内涵List,性能是N+1次查询。

如果提高查询性能,可以使用别名的方式,在SQL中把子查询进行重新命名。

不过如果主查询包括SUM和Group语句,这种方式就不可以。

只有在平铺所有主从表的时候可用。

<resultMap id="blogResult" type="Blog"><id property="id" column="blog_id" /><result property="title" column="blog_title"/><collection property="posts" ofType="Post" resultMap="blogPostResult" columnPrefix="post_"/>
</resultMap><resultMap id="blogPostResult" type="Post"><id property="id" column="id"/><result property="subject" column="subject"/><result property="body" column="body"/>
</resultMap>

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • macos MacPort 包管理工具安装和使用
  • Java-树形图工具类TreeUtil
  • [论文笔记]Rethink Training of BERT Rerankers in Multi-Stage Retrieval Pipeline
  • 自动生成对话视频!如何使用Captions的AI视频生成与编辑API工具?
  • LeetCode90 子集 II
  • C++ 设计模式——备忘录模式
  • LeetCode93 复原 IP 地址
  • C程序设计——指针杂谈0
  • 短剧APP遭遇DDoS攻击的解决方法
  • sqlite3的db.parallelize方法:并行执行SQL语句,提升数据库操作效率
  • 网络编程 0903作业
  • Java 入门指南:Java 并发编程 —— 并发容器 ConcurrentSkipListMap
  • 航电系统,无人机的核心!!!
  • Https配置免费SSL证书
  • C++11中的constexpr
  • -------------------- 第二讲-------- 第一节------在此给出链表的基本操作
  • 345-反转字符串中的元音字母
  • Angular4 模板式表单用法以及验证
  • JS题目及答案整理
  • js正则,这点儿就够用了
  • ucore操作系统实验笔记 - 重新理解中断
  • 电商搜索引擎的架构设计和性能优化
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • #pragma pack(1)
  • #每日一题合集#牛客JZ23-JZ33
  • #我与Java虚拟机的故事#连载13:有这本书就够了
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (poj1.3.2)1791(构造法模拟)
  • (PWM呼吸灯)合泰开发板HT66F2390-----点灯大师
  • (Redis使用系列) Springboot 实现Redis消息的订阅与分布 四
  • (第27天)Oracle 数据泵转换分区表
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • (七)Java对象在Hibernate持久化层的状态
  • (一)为什么要选择C++
  • (转)c++ std::pair 与 std::make
  • ***微信公众号支付+微信H5支付+微信扫码支付+小程序支付+APP微信支付解决方案总结...
  • *_zh_CN.properties 国际化资源文件 struts 防乱码等
  • .NET Core 实现 Redis 批量查询指定格式的Key
  • .net core 使用js,.net core 使用javascript,在.net core项目中怎么使用javascript
  • .NET Core工程编译事件$(TargetDir)变量为空引发的思考
  • .NET IoC 容器(三)Autofac
  • .NET Remoting学习笔记(三)信道
  • .NET WebClient 类下载部分文件会错误?可能是解压缩的锅
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖
  • .NET3.5下用Lambda简化跨线程访问窗体控件,避免繁复的delegate,Invoke(转)
  • .Net下使用 Geb.Video.FFMPEG 操作视频文件
  • @reference注解_Dubbo配置参考手册之dubbo:reference
  • [\u4e00-\u9fa5] //匹配中文字符
  • [000-002-01].数据库调优相关学习
  • [120_移动开发Android]008_android开发之Pull操作xml文件
  • [51nod1610]路径计数