1 到处都是大数据量操作的时候 不适用HIBERNATE

2 用存储过程来实现业务逻辑的 不适合用HIBERNATE

3 数据库关系复杂 或者遗留数据库不适合HIBERNATE

4 团队没有至少一个精通HIBERNATE的 不适合用HIBERNATE



IBATIS自动的分页功能



queryForList(String id ,Object parameterObject ,int skip,int max)

skip - 跳过的记录(即开始的记录-1)

max -- 每页的记录数



对于小数据量,这个足以工作。

代码

import com.ibatis.common.util.PaginatedList;     .......         PaginatedList list = this.getSqlMapClientTemplate().queryForPaginatedList    ("Example.getAll", null, 2);     while (true) {     Iterator listIterator = list.iterator();     while (listIterator.hasNext()) {     System.out.println(     ((CD)listIterator.next()).getId());     }     if( list.isNextPageAvailable())     {     System.out.println("page..."+list.getPageIndex());     list.nextPage();         }     else     break;