rownum이 없는 sybase에서 페이징 구현방법

sybase에서는 페이징 구현하기가 간단하지 않고
spring3.1의 환경에서 mapper로  구현체없이 프로젝트를 구성하였을 경우

일반적으로 많이 쓰는
getSqlMapClientTemplate().queryForList 를 사용하지 못하기 때문에 
SqlSessionTemplate를 연결하여서 구현한다...


xml설정에서 sqlsessionTemplate를 선언하고
<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg ref="sqlSessionFactory"/>
</bean>

 서비스에서 Autowired하고 아래와 같이 사용한다.

@Autowired
private SqlSessionTemplate sqlSessionTemplate;
public List getRepleList(CreativeReple command){
int p = Math.max(0,command.getPage()-1);
RowBounds rowBounds = new RowBounds(p*command.getPageSize(),command.getPageSize());
List repleList = (List) sqlSessionTemplate.selectList("com.nipa.mapper.CreativeRepleMapper.getRepleList", command, rowBounds);
return repleList;
}

댓글