Mybatis中简单的分页
mybatis 中实现 mysql 分页写法“ ? "不允许在关键字前后进行数学运算,需要在代码中计算完成后传递到 mapper.xml 中。 在 java 代码中计算分页
package com.mybatis.review.test;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import com.mybatis.review.pojo.Flower;
public class MainTest {
public static void main(String[] args) throws IOException {
InputStream is = org.apache.ibatis.io.Resources.getResourceAsStream("mybatis.xml");
//使用工厂设计及模式
SqlSessionFactory factory = new
SqlSessionFactoryBuilder().build(is);
//生产SqlSession
SqlSession session = factory.openSession();
int pageSize = 2;
int pageNum = 2;
Map<String,Integer> map = new HashMap();
map.put("pageSize", pageSize);
map.put("pageStart", pageSize*(pageNum-1));
List<Flower> flowers1 =
session.selectList("a.b.page",map);
System.out.println(flowers1.toString());
session.close();
}
}
在 mapper.xml 中代码:
<select id="page" resultType="flower" parameterType="map">
select * from flower limit #{pageStart},#{pageSize}
</select>
特殊符号的转化:
如果在 xml 文件中出现 “<” , “>” ,双引号 等特殊字符时可以使用 XML 文件转义标签(XML 自身的),特殊字符的处理:
<select id="selectPart" resultType="com.mybatis.review.pojo.Flower" parameterType="int">
<![CDATA[ select * from people where id<#{0} ]]>
</select>