mybatis-mp – 亮点五:mapWithKey(把查询转成一个 map)

有很多开发者不想使用 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()));

这样就可以在用户信息里 ,装载角色的信息;是不是很方便 ?!