MyBatis实现链接查询的一种方法

现象:
在mybatis查询中有时候需要查询一张表,然后在通过这个查询出来的字段去链接另外一张表进行查询!

解决办法:
这里通过sql查询了一个对象,在通过这个对象中的id去查询了另外一张表与这个id对应的数据集合!实现了对象中有集合的一种查询!
这里写图片描述

这里写图片描述

这里写图片描述

2:实现调用存储过程查询数据!然后通过查询出来的某个字段去另外一张表中查询某个字段!需要字段对应。通过存储过程将可以实现分页查询!

<mapper namespace="com.oig.dao.AppUserDao">
    <parameterMap type="java.util.Map" id="callPageParams">
        <parameter property="table" jdbcType="NVARCHAR" mode="IN"/>
        <parameter property="fields" jdbcType="NVARCHAR" mode="IN"/>
        <parameter property="pageSize" jdbcType="INTEGER" mode="IN"/>
        <parameter property="pageIndex" jdbcType="INTEGER" mode="IN"/>
        <parameter property="pages" jdbcType="INTEGER" mode="OUT"/>
        <parameter property="total" jdbcType="INTEGER" mode="OUT"/>
        <parameter property="order_by" jdbcType="NVARCHAR" mode="IN"/>
        <parameter property="else_if" jdbcType="NVARCHAR" mode="IN"/>
        <parameter property="primaryKey" jdbcType="NVARCHAR" mode="IN"/>
    </parameterMap>
    <resultMap type="com.oig.bean.AppUserLoginInfo" id="UserLoginInfo">
        <result property="tcode" column="tcode"/>
        <result property="wcode" column="wcode"/>
        <result property="usercode" column="usercode"/>
        <result property="ip" column="ip"/>
        <result property="device" column="device"/>
        <result property="lastlogin" column="lastlogin"/>
        <result property="logintimes" column="logintimes"/>
        <result property="enddate" column="enddate"/>
        <result property="token" column="token"/>
        <association property="wname" column="wcode" select="findWname">
            <result property="wname" column="wname"/>
        </association>
    </resultMap>

    <select id="findUserInfo" parameterMap="callPageParams" resultMap="UserLoginInfo" statementType="CALLABLE">
          {call dbo.P_Public_select(?,?,?,?,?,?,?,?,?)} 
    </select>

    <select id="findWname" parameterType="java.lang.String" resultType="String">
            select wname from wcode where wcode=#{wcode};
    </select>

</mapper>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值