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

MyBatis - 一对多对象关联查询

作者:fyupeng
技术专栏:☞ https://github.com/fyupeng
项目地址:☞ https://github.com/fyupeng/distributed-blog-system-api


留给读者

一、介绍

比如你需要在Company对象中,嵌套列表SonCompanysContactInfos,而且还是直接通过数据库查询出来,不想自己遍历去构造这种对象,那么你可以使用MyBatiscollection 关键字。

二、代码

<select id="queryCompanyDataByKey" resultMap="CompanyItemMap">
        select * from (
        	select a.id, a.area, a.uniscid, a.updatetime as updateTime, b.area as sonArea, b.uniscid as sonUniscid, c.name as contactName
        	from company a inner join son_comopany b on a.sonId = b.id
        	inner join contact_info c on a.contact_id = c.id
       	)
</select>
<resultMap id="CompanyItemMap" type="com.fyupeng.company">
        <id property="id" column="id" />
        <result property="area" column="area" />
        <result property="uniscid" column="uniscid" />
        // 子公司
        <result property="updateTime" column="updateTime" />
        <collection property="sonCompanys" ofType="com.fyupeng.SonCompany">
	        <result property="sonArea" column="sonArea" />
	        <result property="sonUniscid" column="sonUniscid" />
        </collection>
        // 联系人信息
        <collection property="contactInfos" ofType="com.fyupeng.ContactInfo">
            <result property="contactName" column="contactName" />
        </collection>
    </resultMap>

三、总结

简洁、高效、实用!


http://www.kler.cn/a/306381.html

相关文章:

  • 第 13 章 -Go 语言 接口
  • 必修 -- 常用笔试题
  • 【AutoGen 】简介
  • C++ 编程基础(6)作用域 | 6.3、类作用域
  • 建筑施工特种作业人员安全生产知识试题
  • Redis - 集群(Cluster)
  • OpenCV和Tesseract OCR识别复杂验证码喽~~
  • 使用 element UI 实现自定义日历
  • 日元走强引领外汇市场新动向,全球经济指标波动加剧
  • Radware 报告 Web DDoS 攻击活动
  • 7.1溪降技术:徒步
  • LEAN 赋型唯一性(Unique Typing)之 在 n-provability 下 的 赋型唯一性
  • 什么是API网关(API Gateway)?
  • docker 数据管理
  • 运维面试题-2
  • 单组件的编写
  • Vue:使用v-model绑定的textarea在光标处插入指定文本
  • 爬虫代理API的全面解析:让数据抓取更高效
  • vue part 10
  • ctfshow-web入门-sql注入-web248-UDF 注入
  • Luban策划开源工具
  • 【Vue】- Vue应用
  • RZ7888电机驱动芯片
  • 【2023年】云计算金砖牛刀小试5
  • GitLab权限及设置
  • 【Git】Clone