您现在的位置是:首页 > java技术交流java技术交流
spriingboot之mybatis 多对多关联查询
上善若水2020-12-15 16:58:49【java技术交流】 3007人已围观
简介上一篇演示i了一对多关联,在此基础上稍作修改就能完成多对多关联操作,入门知识点之使用注解完成多对多的配置. 表结构我们有三张表用户表用户组表用户与用户组中间表 用户表与中间表一对多关系用户组
上一篇演示i了一对多关联,在此基础上稍作修改就能完成多对多关联操作,入门知识点之使用注解完成多对多的配置.
表结构
我们有三张表 用户表
用户组表
用户与用户组中间表
用户表
与中间表
一对多关系用户组表
与中间表
一对多关系用户表
与用户组表
形成多对多关联本篇演示
用户表
与用户组表表
多对多关系查询1.写个自定义sql根据通过中间表关联出用户组.
@Select({"select `group`.* from user_group left join `group` on user_group.group_id=`group`.id where user_group.user_id=#{userId}"}) List<Group> selectGroups(@Param("userId") int userId);
2.写出查询用户表数据 配置查询中间表数据.
UserVO复制user实体属性加入属性添加..private List<Group> groupList;
编写代码测试结果.@Results({ @Result(property = "userGroupList", javaType=List.class, many =@Many(select="selectUserGroupByUserId"), column = "id"), @Result(property = "groupList", javaType=List.class, many =@Many(select="selectGroups"), column = "id") }) @Select({"select * from user where id=#{userId}"}) User selectUsersGroup(@Param("userId") int userId);
@Test void test2() { User users = userMapper.selectUsersGroup(1); System.out.printf(users.toString()); }
userGroupList已经能查询到结果了.
用户表数据,中间表数据
轻松实现,其他情况请举一反三!
Tags: mybatis mybatis关联查询
很赞哦! (1)
随机图文
-
php yar扩展实现rpc调用
php使用yar使用扩展进行rpc调用,以最大程度实现程序的解耦,类似java微服务互相调用.是一个不错的方式,简单使用rpc使用.yar使用文档:https://www.php.net/manual -
centos查看jenkins的admin初始密码
centos查看jenkins的admin初始密码,我们用yum安装成功后,首次会提示密码的位置,以解锁jenkins,但是如果你没有没有记住密码,下次登录又要回来找密码。jenkins默认密码的 位 -
幽默笑话8则:半夜里老婆听到老公在笑声啜泣,忙把老公叫醒
1.半夜里老婆听到老公在笑声啜泣,忙把老公叫醒。妻子问:“怎么了?”老公说:“梦见自己又结婚了。”老婆说:“不是早就想再找一个吗?哭啥呀,该高兴呀。”老公说:“洞房的时候一揭盖头,还是你!”2.学校放寒假了,做火车回家。在我座位旁边是一个来自安徽的,他问我:兄弟,四川人是不是全部会变脸啊?我反问道:那你们安徽人是不是都唱黄梅戏?然后,然后她给我唱了一段黄梅戏,唱完后 -
能让人特别开心的笑话,经典逗趣,解忧必备
01.为了能当上富二代,我每天躺在床上等我爸富起来。 02.脑子是个好东西,但如果你胸大,没有也行。 03.科三,绿灯起步慢了,教练一句,怎么了,选不到喜欢的颜色? 04.时间告诉我,无理取闹的年龄过了,到了该装逼的时候了。 05.是他!是他!就是他!骚年英雄小人渣。 06.以前我是没有择偶标准,直到遇到你,我告诉自己,你这种不能要。 07.有很多事情你当时想不通,别着急,过一段时间你