首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

ibatis中N+1有关问题

2012-10-31 
ibatis中N+1问题背景:User RoleUserRole 3个表的关系我现在的需求:查找出所有用户,并且把他的角色也显示出

ibatis中N+1问题

背景:User Role UserRole 3个表的关系

我现在的需求:查找出所有用户,并且把他的角色也显示出来

一个用户可以有多个角色,那么User: id,name, Role

1.User ResultMap

2.Role ResultMap

?

3.User SELECT

讲解问题重现:

?

这里用了select 属性,可以理解为一个抓取策略,会根据roleid去发一条SQL抓取,但是我现在需求是查询所有的用户

那么对应的roleid会有多个,那么就会发多条SQL

?

解决问题:

其实我用内连接已经查询出了用户、角色的全部信息,我在

这个result中,再次关联一个resulMap然后用groupId去组合即可。

?

?

热点排行