mybatis链接查询数据对应不上

mybatis collection 多层嵌套 不可以使用columnPrefix=指定统一别名,不然对应不上 踩坑记录

原始的

<!--角色权限-->
    <resultMap type="com.wuyu.store.sys.entity.vo.RoleList" id="RoleListResultMap">
        <id column="role_id" property="roleId" jdbcType="BIGINT"/>
        <result column="role_name" property="roleName" jdbcType="VARCHAR"/>
        <collection property="menuList" columnPrefix="m_" ofType="com.wuyu.store.sys.entity.Menu">
            <id column="menu_id" property="menuId" jdbcType="BIGINT" />
            <result column="menu_name" property="menuName" jdbcType="VARCHAR" />
            <result column="is_submenu" property="isSubmenu" jdbcType="TINYINT" />
            <result column="superior_menu_id" property="superiorMenuId" jdbcType="BIGINT" />
            <result column="menu_url" property="menuUrl" jdbcType="VARCHAR" />
            <result column="menu_icon" property="menuIcon" jdbcType="VARCHAR" />
        </collection>
    </resultMap>
    <!--用户基础信息-->
    <resultMap type="com.wuyu.store.sys.entity.vo.UserInfo" id="UserInfoResultDetailMap" >
        <id column="user_id" property="userId" jdbcType="BIGINT"/>
        <result column="user_name" property="userName" jdbcType="VARCHAR"/>
        <result column="account" property="account" jdbcType="VARCHAR"/>
        <result column="money" property="money" jdbcType="DECIMAL"/>
        <result column="user_live_id" property="userLiveId" jdbcType="BIGINT"/>
        <result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>
        <result column="last_update_time" property="lastUpdateTime" jdbcType="TIMESTAMP"/>
        <result column="version" property="version" jdbcType="INTEGER"/>
        <result column="password" property="password" jdbcType="VARCHAR"/>
        <result column="state" property="state" jdbcType="VARCHAR"/>
        <collection property="roleList" columnPrefix="r_" resultMap="RoleListResultMap">
        </collection>
    </resultMap>

改过的


<!--角色权限-->
    <resultMap type="com.wuyu.store.sys.entity.vo.RoleList" id="RoleListResultMap">
        <id column="role_id" property="roleId" jdbcType="BIGINT"/>
        <result column="role_name" property="roleName" jdbcType="VARCHAR"/>
        <collection property="menuList" ofType="com.wuyu.store.sys.entity.Menu">
            <id column="menu_id" property="menuId" jdbcType="BIGINT" />
            <result column="menu_name" property="menuName" jdbcType="VARCHAR" />
            <result column="is_submenu" property="isSubmenu" jdbcType="TINYINT" />
            <result column="superior_menu_id" property="superiorMenuId" jdbcType="BIGINT" />
            <result column="menu_url" property="menuUrl" jdbcType="VARCHAR" />
            <result column="menu_icon" property="menuIcon" jdbcType="VARCHAR" />
        </collection>
    </resultMap>
    <!--用户基础信息-->
    <resultMap type="com.wuyu.store.sys.entity.vo.UserInfo" id="UserInfoResultDetailMap" >
        <id column="user_id" property="userId" jdbcType="BIGINT"/>
        <result column="user_name" property="userName" jdbcType="VARCHAR"/>
        <result column="account" property="account" jdbcType="VARCHAR"/>
        <result column="money" property="money" jdbcType="DECIMAL"/>
        <result column="user_live_id" property="userLiveId" jdbcType="BIGINT"/>
        <result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>
        <result column="last_update_time" property="lastUpdateTime" jdbcType="TIMESTAMP"/>
        <result column="version" property="version" jdbcType="INTEGER"/>
        <result column="password" property="password" jdbcType="VARCHAR"/>
        <result column="state" property="state" jdbcType="VARCHAR"/>
        <collection property="roleList" resultMap="RoleListResultMap">
        </collection>
    </resultMap>

链接查询必须查询id不然会报错

Expected one result (or null) to be returned by selectOne(),but found: 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值