[Egov] 커스텀 페이지 렌더링 클래스 추가하기 (PaginationRenderer)
전자정부프레임워크의 페이징 디자인을 변경하기 위해서는 AbstractPaginationRenderer 추상클래스를 구현하면 합니다.
기본 디자인은 요렇게 밋밋합니다.
public class CustomPaginationRenderer extends AbstractPaginationRenderer {
public CustomPaginationRenderer() {
firstPageLabel = "<li><a href=\"#\" class=\"first\" onclick=\"{0}({1}); return false;\">처음으로</a></li>";
previousPageLabel = "<li><a href=\"#\" class=\"prev\" onclick=\"{0}({1}); return false;\">이전으로</a></li>";
currentPageLabel = "<li><a href=\"#\" class=\"active\">{0}</a></li>";
otherPageLabel = "<li><a href=\"#\" onclick=\"{0}({1}); return false;\">{2}</a></li>";
nextPageLabel = "<li><a href=\"#\" class=\"next\" onclick=\"{0}({1}); return false;\">다음으로</a></li>";
lastPageLabel = "<li><a href=\"#\" class=\"last\" onclick=\"{0}({1}); return false;\">맨뒤로</a></li>";
}
}
위와 같이 각 프로퍼티의 기능에 맞게 커스터마이징 해줍니다.
{0} 은 js 페이지 이동 함수, {1}은 pageNo 가 됩니다.
태그에 class가 지정되어 있으니 디자이너에게 맡기면 멋진 페이징바가 완성되겠죠!! (아니면 직접 css를 작성해도 되죠!!)
작성한 클래스를 등록해야 합니다.
스프링 설정파일을 열어서 다음과 같이 등록해 줍니다.
<bean id="customPagingRenderer" class="cmmn.base.web.CustomPaginationRenderer"/>
<bean id="paginationManager" class="egovframework.rte.ptl.mvc.tags.ui.pagination.DefaultPaginationManager">
<property name="rendererType">
<map>
<entry key="customRenderer" value-ref="customPagingRenderer"/>
</map>
</property>
</bean>
jsp에서는 요렇게,,
<div class="paging">
<ul>
<ui:pagination paginationInfo="${paginationInfo}" type="customRenderer" jsFunction="linkPage"/>
</ul>
</div>
참고사이트
http://www.egovframe.go.kr/wiki/doku.php