머리 싸매가지고 만든 게시판 페이징~
private final int listSize = 10;
private int totalPost; //총 글 갯수
private int totalPage; //총 페이지 갯수 *
private int offsetPost; //페이지 첫 글
private int limitPost; //페이지 마지막 글
private int viewPage; //현재 페이지
private int beginPage; //목록 첫 페이지
private int endPage; //목록 다음 페이지
private boolean showNext = false;
private boolean showPrev = false;
public MarketPageHandler(int totalPost) {
this.totalPost = totalPost;
totalPage = totalPost/listSize +1;
limitPost = viewPage*listSize < totalPost ? viewPage*listSize : totalPost;
offsetPost = viewPage*10-9;
beginPage = (viewPage/10*10)+1;
endPage = totalPost*0.1 >= 1 ? totalPage : totalPost/10+1;
viewPage = offsetPost == 1 ? 1 :offsetPost/10;
showNext = totalPage != endPage;
showPrev = beginPage != 1;
}
하...근데..
이거 구하다가 친구한테 말했더니
JPA가 페이징 기능을 자동으로 해준다고...^^!
그래도 구하기 시작한 거 중간에 포기하기 싫어서 걍 다 구함ㅋ
테스트
int listSize = 10;
int totalPost = 1960;
int viewPage = 147;
int totalPage = totalPost/listSize +1;
int limitPost = viewPage*listSize < totalPost ? viewPage*listSize : totalPost;
int offsetPost = viewPage*10-9;
int beginPage = (viewPage/10*10)+1;
int endPage = totalPost*0.1 >= 1 ? totalPage : totalPost/10+1;
boolean showNext = totalPage != endPage;
boolean showPrev = beginPage != 1;
System.out.println("totalPage = " + totalPage+","+(totalPage==197));
System.out.println("beginPage = " + beginPage+","+(beginPage==141));
System.out.println("offsetPost = " + offsetPost+","+(offsetPost==1461));
System.out.println("limitPost = " + limitPost+","+(limitPost==1470));
System.out.println("endPage = " + endPage+","+(endPage==197));
System.out.println("showNext = " + showNext+","+(showNext==false));
System.out.println("showPrev = " + showPrev+","+(showPrev==true));
결과
모두 참이 나옴을 볼 수 잇겠어요 ^^
낄렵낄렵
728x90
'혼자서 개발새발' 카테고리의 다른 글
페이징 할 때 Entity로 받고, Dto로 변환하자! (1) | 2023.01.05 |
---|---|
JPA ) QueryDsl , Pageble 을 이용해 페이징을 하다! (0) | 2023.01.04 |
저장용) JPA & QueryDsl 쓰는 법 (0) | 2022.12.20 |
Spring) 게시판 보완(이전 글, 다음 글, 내 글에만 수정, 삭제 보이기 등) (0) | 2022.11.23 |
Spring) 댓글 기능 구현 - DB Table, DTO, DAO, Service, Mapper 만들기 (0) | 2022.11.23 |