studyplan

페이지네이션 , Pagination 만들어지는 과정 2 본문

스프링

페이지네이션 , Pagination 만들어지는 과정 2

무한머니 2022. 7. 29. 01:38

앞서 우리는 페이지의 숫자가 어떻게 만들어지는지 봤다 

그래서 우리는 jsp안에서 어떻게 만들어 지는지 확인해 보려고 한다 

위의 코드가

이렇게 변한다

일단 저 것을 재대로 보기 전에 ! 

자바 서버쪽에서 어떤 값을 주는지 확인 해야된다 

그래서 자바 코드를 보려고 한다 

 

자바의 코드이다 ! 

@GetMapping() 이 이노테이션을 사용하면 

 

 GetMapping 으로 /qna 로 끝나는 주소를 입력할때

 위에 자바 코드가 돌아가면서 model에 값을 담아서

저 jsp에  필요한 값을 전달 해주는것이다 .

 

Map<String, Object> allService = service.findAllService(page);

page 값을 가진 모두를 가져오는 findAllService(page) 라는 함수를 통해 맵과 , 

PageMaker qnacnt = new PageMaker(new Page(page.getPageNum(), page.getAmount()), (long) allService.get("qnacnt"));

 PageMaker 클래스안에  코드를 통해서 만들어진 

pageMaker 를 가져와서 모델에 넣어준다 

 

 

앞으로 pm 을 잘 봐주길 바란다 

먼저 prev 를 보자면 

   <c:if test="${pm.prev}">
불린값으로 나타나거나 , 안나타나거나를 나타낸다 
 
                            <li class="page-item">
<a class="page-link"
                                    href="/qna?pageNum=${pm.beginPage - 1}&amount=${pm.getPage().getAmount()}">Prev</a>
 
 
                            </li>
                        </c:if>

여기서 a 태그는 링크를 말하는것인데 저 prev 를 누르면 이동하게 되어있다 

그 경로는 href  속성 을 통해서 경로를 지정해줄수 있는데 

그때 같이 들고갈 ? 뒤의 값을 지정해줘서 날려준다 

고로 

prev 를 누르면  /qna 로 이동하는데 pageNum 과 amount 의 값을 정해서 전달해준다 ! 

next 도 마찬가지이다 

이건 숫자를 나타내준다 

 

 

이 과정을 설명 하자면 

맨처음 내가 사이트를 들어갈때 초기에 값이 세팅이 된다 ! 

 

맨처음에 페이지는 1, 그리고 한 화면에 보여줄 게시물 수는 10 이된다 

이 값을 가지고 

 

리스트와 함께 페이지 메이커값도 같이 브라우저에 뿌려진다 

리스트와 ,페이지메이커 , 

그러고 내가 

8 이라는 페이지를 누르는 순간 ! 

이 코드가 활성화가 되면서 

/qna 에 pageNum=8 이라고 값을 다시 보내주게 되고 실시간으로 페이지가 다시 만들어지게 되는것이다  

Comments