zoukankan      html  css  js  c++  java
  • mybatis中的oracle和mysql分页

    这段时间一直在用mybatis+spring+springMVC的框架,总结点东西吧。

    mybatis的oracle分页写法:

    <?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="common">
        <sql id="Oracle_Pagination_Head">
            <if test="oracleStart!=null and oracleEnd!=null">
                <![CDATA[select y.* from(select z.*,rownum as oracleStart from (]]>
            </if>
        </sql>
        
        <sql id="Oracle_Pagination_Tail">
            <if test="oracleStart != null and oracleEnd != null">
                <![CDATA[ ) z where rownum <= #{oracleEnd} ) y where y.oracleStart > #{oracleStart} ]]>
            </if>
        </sql>
    </mapper>

    页面调用此方法的情况:

    <?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="cn.edu.hbcf.plugin.asset.dao.AssetApplyDao">
        <select id="queryAsset" resultType="cn.edu.hbcf.plugin.asset.pojo.AssetInfo" parameterType="Criteria">
            <include refid="common.Oracle_Pagination_Head" />
          select ASSET_ID             as assetId,
            from asset_info
           where processinstanceId = #{condition.processinstanceId}
            <include refid="common.Oracle_Pagination_Tail" />
        </select>

    mysql的分页通用代码如下:

    <?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="common">
        <sql id="MySql_Pagination_Head">
        
        </sql>
        <sql id="MySql_Pagination_Tail">
            <if test="limit != 0">
                <![CDATA[ limit #{start},#{limit} ]]>
            </if>
        </sql>
    </mapper>

    先留下痕迹,以后用的时候方便查看

  • 相关阅读:
    Linux内核分析--系统调用【转】
    Linux slab分配器【转】
    简化指令与复杂指令的区别【转】
    冯诺依曼体系结构与哈佛体系结构的区别【转】
    bzero, memset ,setmem 区别【转】
    写一个标准宏MIN,输入两个参数,返回较小的
    红黑树(一)之原理和算法的详细分析【转】
    socket心跳包机制总结【转】
    Linux文件时间详解ctime、mtime、atime【转】
    【转】图文并茂 Ubuntu使用Thunderbird方法指南
  • 原文地址:https://www.cnblogs.com/zrui-xyu/p/4527691.html
Copyright © 2011-2022 走看看