1. 程式人生 > >mybatis的物理分頁:mybatis-paginator

mybatis的物理分頁:mybatis-paginator

package acc.service.support; 2 3 import java.io.Serializable; 4 import java.util.List; 5 6 import org.apache.ibatis.session.SqlSession; 7 import org.apache.ibatis.session.SqlSessionFactory; 8 import org.mybatis.spring.SqlSessionFactoryBean; 9 import org.mybatis.spring.SqlSessionUtils; 10 import
org.slf4j.Logger; 11 import org.slf4j.LoggerFactory; 12 import org.springframework.beans.factory.annotation.Autowired; 13 14 import com.github.miemiedev.mybatis.paginator.domain.PageBounds; 15 16 public class BaseServiceImpl implements Serializable { 17 18 private static final long serialVersionUID = 1293567786956029903L;
19 20 protected Logger logger = LoggerFactory.getLogger(this.getClass()); 21 22 @Autowired 23 protected SqlSessionFactoryBean sqlSessionFactory; 24 25 /** 26 * 查詢分頁資料 27 * 28 * @param mapperClass 29 * @param sqlId 30 * @param sqlParameter 31 * @param
pageIndex 32 * @param pageSize 33 * @return 34 * @throws Exception 35 */ 36 protected List<?> getPageList(Class<?> mapperClass, String sqlId, 37 Object sqlParameter, int pageIndex, int pageSize) throws Exception { 38 SqlSession session = null; 39 try { 40 SqlSessionFactory sessionFactory = sqlSessionFactory.getObject(); 41 session = SqlSessionUtils.getSqlSession(sessionFactory); 42 if (pageIndex <= 0) { 43 pageIndex = 1; 44 } 45 if (pageSize <= 0) { 46 pageSize = 10; 47 } 48 PageBounds pageBounds = new PageBounds(pageIndex, pageSize); 49 return session.selectList(mapperClass.getName() + "." + sqlId, 50 sqlParameter, pageBounds); 51 } finally { 52 session.close(); 53 } 54 55 } 56 57 }