一、 在数据库中执行的分页sql
SELECT * FROM (
SELECT
ROWNUM AS ROWNO,
T.*
FROM TAB_NAME T WHERE ROWNUM <= (2 * 10) /* pageNum * pageSize */
) TMP
WHERE TMP.ROWNO >= (2 - 1) * 10 + 1; /* (#{pageNum} - 1) * #{pageSize} + 1 */
二、Mybastis中使用大于号小于号以及特殊字符冲突问题解决
方式一、使用转义符转义
字符 |
转义符 |
< |
< |
<= |
<= |
> |
> |
>= |
>= |
& |
& |
' |
' |
" |
" |
方式二、使用 <![CDATA[ ]]>标签转义
<!-- 使用示例 -->
<![CDATA[WHERE ROWNUM <= (#{pageNum} * #{pageSize}) ]]>
SELECT * FROM (
SELECT
ROWNUM AS ROWNO,
T.*
FROM TAB_NAME T <![CDATA[ WHERE ROWNUM <= (#{pageNum} * #{pageSize}) ]]>
) TMP
<![CDATA[ WHERE TMP.ROWNO >= (#{pageNum} - 1) * #{pageSize} + 1 ]]>