如图只查询了user,collection里面的东西没有被调用
xml里的代码
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.jkd.student_union.mapper.UserMapper">
<select id="selectAllUser" resultType="com.jkd.student_union.pojo.User">
select * from user;
</select>
<!--用户信息结果-->
<resultMap id="mainMap" type="com.jkd.student_union.pojo.User">
<id column="id" property="id"/>
<result column="user_name" property="userName"/>
<result column="password" property="password"/>
<result column="nick_name" property="nickName"/>
<result column="sex" property="sex"/>
<result column="avatar" property="avatar"/>
<result column="address" property="address"/>
<result column="student_number" property="studentNumber"/>
<result column="student_major" property="studentMajor"/>
<result column="open_id" property="openId"/>
<result column="status" property="status"/>
<result column="admin" property="admin"/>
<result column="student_belong" property="studentBelong"/>
<result column="student_grade" property="studentGrade"/>
<result column="phone_number" property="phoneNumber"/>
<collection select="findRoles" column="id" ofType="com.jkd.student_union.pojo.Role" property="roles"/>
</resultMap>
<!--角色结果-->
<resultMap id="roleMap" type="com.jkd.student_union.pojo.Role">
<id column="id" property="id"/>
<result column="label" property="label"/>
<result column="code" property="code"/>
<collection property="permissions" ofType="com.jkd.student_union.pojo.permission" select="findPermission" column="id"/>
</resultMap>
<!--获取用户信息-->
<select id="findByUsername" parameterType="java.lang.String" resultType="com.jkd.student_union.pojo.User">
select * from user where user_name = #{userName}
</select>
<!-- 根据用户id查询角色-->
<select id="findRoles" parameterType="int" resultMap="roleMap">
select * from role where id in (select role_id from user_roles where user_id = #{user_id})
</select>
<!-- 根据角色id查询权限-->
<select id="findPermission" parameterType="int" resultType="com.jkd.student_union.pojo.permission">
select * from permission where id in (select permission_id from role_permissions where role_id = #{id})
</select>
</mapper>
实体类:
public class User implements UserDetails {
private Long id;
private String userName;
private String password;
private String nickName;
private Integer sex;
private String avatar;
private String address;
private String studentNumber;
private String studentMajor;
private String openId;
private Boolean status;
private Boolean admin;
private Long studentBelong;
private String studentGrade;
private String phoneNumber;
private List<Role> roles;
public class Role {
private Long id;
private String label;
private String code;
/**
* 权限菜单
*/
private List<permission> permissions;
}