有很多开发者不想使用 join连表,通过for循环去加载数据;于是mybatis-mp作者给大家开发一个mapWithKey方法;mapWithKey
方法的作用是 开发自己指定一个key,然后通过此方法,可以把查询转成一个map;这样for循环时,可以很容易就把数据装载到list里item对象里
例如:
1:List<SysUser> voList=sysUserMapper.list(where->where.like(SysUser::getName,'xx'););
2: List<Integer> roleIds=voList.map(sysUser->sysUser::getRoleId).toList();
3: Map<Integer, SysRole> rolesMap= sysRoleMapper.mapWithKey(SysRole::getId, roleIds);
4: voList.foreach(item->item.setSysRole(rolesMap.get(item.getRoleId()));
这样就可以在用户信息里 ,装载角色的信息;是不是很方便 ?!