Mybatis里SQL语句的分页

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis里SQL语句的分页相关的知识,希望对你有一定的参考价值。

SQL语句中的分页。

首先在接口中定义,定义的时候是需要通过@Param注解来表示向mybatis里传入参数:

 

public interface GoodsInfoMapper extends IDaoHotel<GoodsInfo> {
      //定义一个方法,这个方法来表示分页的
    List<GoodsInfo> getlistbypage(@Param("startindex")Integer startindex,
                                  @Param("endindex")Integer endindex,
                                  @Param("goodsInfo")GoodsInfo goodsInfo);
}

 

紧接着在实体XML配置文件里写:

 

<!-- 带查询条件和分页的查询方法 -->
<select id="getlistbypage"  resultMap="goodsInfoLazyResultMap">
    select t.*
    from (select rownum as rnum, g.*
          from goodsinfo g
          where g.ifdelete=‘N‘
     <if test="goodsInfo.goodstypeid!=null and goodsInfo.goodstypeid >0">
        and g.goodstypeid=#{goodsInfo.goodstypeid}
    </if>
    <if test="goodsInfo.commdityid!=null and goodsInfo.commdityid!=‘‘">
        and g.commdityid=#{goodsInfo.commdityid}
    </if>
    <if test="goodsInfo.commdityname!=null and goodsInfo.commdityname!=‘‘">
        and g.commdityname=#{goodsInfo.commdityname}
    </if> 
    )t
    <where>
        <if test="startindex!=null and startindex>0">
        <![CDATA[
           and t.rnum >=#{startindex}
        ]]>
        </if>
        <if test="endindex!=null and endindex>0">
          <![CDATA[
           and t.rnum <=#{endindex}
        ]]>
        </if>
    </where>
</select>

 

以上是关于Mybatis里SQL语句的分页的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis分页插件PageHelper使用

关于mybatis+sqlserver 的多表关联的分页(注意要先分页在多表关联)

mybatis中mapper.xml分页查询oracle的sql语句,按字段查询

使用 druid 连接池来优化分页语句

mysql mybatis 分页查询语句怎么写

mybatis 中怎样实现oracle分页语句