您现在的位置是:首页 > java技术交流java技术交流
spriingboot之mybatis 多对多关联查询
上善若水2020-12-15 16:58:49【java技术交流】 2935人已围观
简介上一篇演示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)
随机图文
-
人均GDP过万美元在世界上到底是什么水平?
2019年1月17日,国家统计局发布数据,2019年我国国内生产总值(GDP)接近100万亿元大关。按年平均汇率折算,人均GDP达10276美元,跨上1万美元台阶。很多朋友们都关心,人均GDP1万美元 -
幽默故事一
初中的时候,有一天,我在历史教科书上给秦始皇画墨镜,我的美女同桌忽然说,「我妈妈说,艺术家都是疯子。」我感觉受到了莫大的鼓舞,惊喜地抬起头看着她,眼睛里流光溢彩。她不解地白了我一眼,说,「你激动什么, -
layui面包屑消失 layui刷新后丢失 时而显示时而隐藏bug
今天在使用layui面包屑layui-breadcrumb时,多次刷新会出现时而显示时而消失不显示的bug,layui刷新后丢失面包屑,发现问题,找到解决方法,给大家分享下.原因是为调用elemen -
笑话太绝了,一个比一个搞笑,绝对笑的你肚子疼!
1.耻笑今天在公交车上听到一个八九岁的男孩对旁边的小女孩说:“谁说不能预测未来?至少我能知道以后我的孩子姓什么,可是你就不同了,你的孩子姓什么还是未知数呢!”那小女孩毫不思索地大声回了一句:“哼哼,那是!虽然你能知道你的孩子跟你姓。但是我知道,我的孩子肯定是我的孩子,你的孩子就未必了哟!”全车人都差点被秒杀了!12月4送你八个笑话太绝了,一个比一个搞笑,绝对笑的你肚子疼!2.彪