一、下載jar包並導入
jsqlparser-1.3.jar,下載地址: https://mvnrepository.com/artifact/com.github.jsqlparser/jsqlparser/1.3
pagehelper-5.1.6.jar,下載地址:https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper/5.1.6
二、配置config.xml
<plugins> <plugin interceptor="com.github.pagehelper.PageInterceptor" > </plugin> </plugins>
三、接口方法
public interface UserMapper {
//分頁查詢
public List<User> selectForPage(User user);
}
四、xml
<select id="selectForPage" resultType="User"> select * from user </select>
五、測試
public class myTest {
SqlSession session = MyBatisUtils.openSession();
UserMapper userMapper = session.getMapper(UserMapper.class);
@Test
public void selectForPage1() {
User user = new User();
PageBean bean = new PageBean();
bean.setCurrentPage(1);
bean.setPageSize(5);
Page<User> page = PageHelper.startPage(bean.getCurrentPage(), bean.getPageSize());
/**
* 參數1:要查詢第幾頁
* 參數2:每頁條數
* 參數3:是否查詢總條數,默認為true
*/
List<User> list = userMapper.selectForPage(user);
for (User user2 : list) {
System.out.println(user2);
}
System.out.println("總條數"+page.getTotal() + "總頁數"+page.getPages());
MyBatisUtils.closeSession(session);
}
}
六、實現原理
分頁插件使用這個方法selectAll(user),然后改造方法,重組sql,執行sql 。
