1.ibatis分页处理
public List<User> query(String activityId, Date startTime, Date endTime, Integer start, Integer pageSize, String flagg) { UserExample example = new UserExample(); Criteria criteria = example.createCriteria(); criteria.andActiveStatusEqualTo("1") .andPayBenefitStatusEqualTo("0") .andCouponStatusEqualTo("UD") .andCouponIdEqualTo(activityId); if(startTime != null) { criteria.andEndTimeGreaterThanOrEqualTo(startTime); } if(endTime != null) { criteria.andEndTimeLessThanOrEqualTo(endTime); } example.setOrderByClause("member_id"); example.setStart(start); example.setPageSize(pageSize); return userDAO.selectByExample(example, flagg); } 2.jdbcTemplate分页处理 private List<User> queryDetail(Long batchId, int start, int limit) { StringBuffer sqlBuffer = new StringBuffer(query_sql); sqlBuffer.append(" limit " + start + ", " + limit); List<User> list = jdbcTemplate.query(sqlBuffer.toString(), new Object[] {batchId}, new BeanPropertyRowMapper(User.class)); return list; }3.jdbcTemple的in查询 private static String status_in = "and status in "; private List<Userl> queryDetailWithStatus(Long batchId, List<String> statusList, int start, int limit) { StringBuffer sqlBuffer = new StringBuffer(query_sql); if(!CollectionUtils.isEmpty(statusList)) { sqlBuffer.append(status_in); sqlBuffer.append("("); for(int i=0; i<statusList.size();i++) { if(i==0) { sqlBuffer.append("'" + statusList.get(i) + "'"); } else { sqlBuffer.append("," + "'" + statusList.get(i) + "'"); } } sqlBuffer.append(")"); } sqlBuffer.append(" limit " + start + ", " + limit); System.out.println(sqlBuffer); List<User> list = jdbcTemplate.query(sqlBuffer.toString(), new Object[] {batchId}, new BeanPropertyRowMapper(User.class)); return list; } 4.jdbcTemplate分页的第二版 private static String real_sql ="select * from user limit %s,%s"; List<User> list = jdbcTemplate.query(String.format(real_sql,start,pageSize), new Object[] {request.getActivityId(), endTime}, new BeanPropertyRowMapper(User.class));