mybatis联表查询:一对一、一对多

<!--    夺表查询,一个用户多个角色-->
<!--    <resulMap id=<select resultMap后面的值,名称可以自己起 (id对应dao层的方法)>
        type=A pojo类名A>
        < id column="表格中的列名" property="pojo类的属性值"> 这里映射的是主键
        <result column="表格中的列名" property="pojo类的属性值"> 映射普通属性
        一对多时
        <collection property="pojo类A里面的属性b(b的属性是一个pojo类B)" ofType="B">
            <id column="表中的主键" property="B中的属性"/>这里映射的是主键
            <result column="列名" property="B中的属性"/>映射普通属性
        </collection>
        一对一的时候
        <association property="pojo类A里面的属性b(b的属性是一个pojo类B)"  javaType="B">
           <id column="表中的主键" property="B中的属性"/>这里映射的是主键
            <result column="列名" property="B中的属性"/>映射普通属性
        </association>
        </resulMap>
  </resultMap> -->
    <resultMap id="UserAndRoler" type="User">
        <id column="id" property="id"/>
        <result column="username" property="username"/>
        <result column="email" property="email"/>
        <result column="password" property="password"/>
        <result column="phoneNum" property="phoneNum"/>
        <collection property="roles" ofType="Role">
            <id column="rolerid" property="id"/>
            <result column="roleName" property="roleName"/>
            <result column="roleDesc" property="roleDesc"/>
        </collection>
    </resultMap>
    <select id="findUR" resultMap="UserAndRoler">
        select u.id,u.username,u.email,u.password,u.phoneNum,
        r.id rolerid,r.roleName,r.roleDesc
         from sys_user u,sys_role r ,sys_user_role ur
        where  ur.userid=u.id And ur.roleId=r.id;
    </select>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值