MybatisresultMap嵌套集合
resultMap 是 Mybatis 最强大的元素,它可以将查询到的复杂数据(比如查询到几个表中数据)映射到一个结果集当中。
resultMap 包含的元素:
如果 collection 标签是使用嵌套查询,格式如下:
注意:标签中的column:要传递给 select 查询语句的参数,如果传递多个参数,格式为column= "{参数名1=表字段1,参数名2=表字段2}" ;
以下以实例介绍 resultMap 的用法 :
一、简单需求
一个商品的结果映射; 创建商品 pojo 对象 publicclassTShopSku { /** * 主键ID */ private Long id; /** * 商品名 */ private String skuName; /** * 分类ID */ private Long categoryId; /** * 主键ID * @return ID */ public Long getId() { returnid; } /** * 主键ID, * @param id */ public void setId(Long id) { this.id = id; } /** * 商品名 * @return SKU_NAME 商品名 */ public String getSkuName() { return skuName; } /** * 商品名 * @param skuName 商品名 */ public void setSkuName(String skuName) { this.skuName = skuName == null ? null : skuName.trim(); } /** * 分类ID * @return CATEGORY_ID 分类ID */ public Long getCategoryId() { return categoryId; } /** * 分类ID * @param categoryId 分类ID */ public void setCategoryId(Long categoryId) { this.categoryId = categoryId; } }
对应的 resultMap:
二、商品pojo类添加属性集合
一个商品会有一些属性,现在需要将查询出的商品属性添加到商品对象中,首先需要在原商品 pojo 类的基础上中添加属性的集合: /** * 属性集合 */ privateList attributes; /** * 获得属性集合 */ public List getAttributes() { return attributes; } /** * 设置属性集合 * @param attributes */ public void setAttributes(List attributes) { this.attributes = attributes; }
将 Collection 标签添加到 resultMap 中,这里有两种方式:
1、嵌套结果
对应的 resultMap
查询语句
2、关联的嵌套查询(在collection中添加select属性)
商品结果集映射 resultMap
collection 的 select 会执行下面的查询属性语句:
属性结果集映射
BasePlusResultMap 包含了属性查询语句的 Collection
所以通过下面的查询商品语句就可获得商品以及其包含的属性集合:
SpringBoot整合MongoDB超详细一介绍在前面的文章中,我们详细的介绍了MongoDB的配置和使用,如果你对MongoDB还不是很了解,也没关系,在MongoDB中有三个比较重要的名词数据库集合文档!数据库(Dat
C语言函数在线练习题31。杀鸡用牛刀(3级)1题目描述哈哈!我们终于学了递归了,现在大家一定感到非常有意思吧,那个典型的汉诺塔问题,一个非常短的程序居然可以完成如此复杂的工作,真是神奇啊!来吧,让我们也
2022,你会失业吗?这篇深度反思文章,可能会改变你的职场命运文瓜爸我要说一句真话铁饭碗不是一辈子在一个地方吃饭。而是到哪里都有饭吃。靠得住的不是时代,而是个人,一定要强化个人能力,让你在疯狂的内卷下,仍然无可替代。最近的裁员消息身边朋友的感
你喜欢的动漫壁纸有哪些?爱魔道,渣反,天官我喜欢的太多了捂脸,我总是会收藏或分享一些我喜欢的壁纸和图片,我的口味比较杂,只要不是那种特别恐怖的画风我都可以接受话不多说,放图呃有些是漫画里的人物,就这样吧,
均胜电子董秘回复公司目前着力L2至L4级自动驾驶域控制器和功能模块的研发,预计在2023年初搭载量产均胜电子(600699)02月16日在投资者关系平台上答复了投资者关心的问题。投资者公司产品有汽车自动驾驶方面的产品吗?主要应用在哪方面?产品性能能满足L3或者L4级别吗?均胜电子
手机上有什么小众却不舍得卸载的软件?相信对于每天都捧着手机来玩的小伙伴们而言,对于手机插件应该不至于陌生吧!大家或多或少的都有在桌面上添加过一些天气壁纸或者一些应用类的软件。你们有什么比较好用的手机软件,今天,小编就
空气能热水器稳定吗?适合普通家庭使用吗?我就是使用空气能热水器优点是相对安全系数更高卫生间里面不用吊装热水器缺点是价格更加贵如果农村洋房或别墅使(比如空气能放4楼1楼用水要放一桶水才能到热水这就是浪费水浪费电)因管道比较
光刻机芯片华为,高科技领域的转机可能马上到来这个世界不止一面,所以,看待问题,往往会用到不同的视角,有的是生活,有些则是玄学。先说几个高科技领域内的代表性问题。1。中国能不能在高科技领域越来越强,打败美国的封锁?2。未来,我
芯片教父张忠谋芯片实验室赵工半导体工程师202202170844众所周知,曹德旺41岁创立福耀,任正非43岁创立华为。很多人说,曹德旺和任正非都属于那种大器晚成的创业者和企业家。说到大器晚成的创
正面刚菜鸟!多多买菜有了新算盘,站长打不过,一天就忙俩小时本文来源时代财经作者徐晓倩图源视觉中国低调了许久的社区团购赛道终于有了新动态。近日,多多买菜要做快递代收点的消息在快递圈子内传开。多多买菜宣称已与中通圆通申通韵达邮政极兔百世汇通等
劝各位洁身自好,大数据下的大数据扫黄,让扫黄更精准大数据是信息时代的产物,如今,大数据无处不在,随便说一两句话可能就被大数据捕捉到,网络购物就是基于大数据准确推送的。但是扫黄结合大数据会怎样?毫无疑问,大数据将会为相关职能部门提供