-JPA 는 페이징처리와 정렬처리를 finAll()이라는 메서드를 사용한다.
-findAll()은 JpaRepository 인터페이스의 상위인 PagingSortRepository의 메서드로 전달되는 Pageablwe이라는 타입의 객체에 의해서 실행되는 쿼리를 결정하게 된다.
-리턴타입은 Page타입으로 지정하는경우 반드시 파라미터를 Pageable 타입을 사용해야한다.
-pageable 인터페이스는 페이지 처리에 필요한 정보를 전달하는 용도의 타입으로, 인터페이스 이기 떄문에 객체를 생설할떄는 구현체인 PageRequest라는 클래스를 이용한다.
-이 클래스의 생성자는 protected 로선언되어 new를 사용할수 없다.
-static한 of() 를 사용해야 한다.
-PageRequest 생성자를 보면 page,size,sort 라는 정보를 이용해서 객체를 생성한다.
-Spring Data Jpa 를 이용할떄는 페이지 처리는 반드시 '0부터 시작한다' 는 점을 기억해야 한다.
(제가 주석을 세세하고 많이 적는 습관이 있어서 많은 주석으로 인한 지저분한 코드 죄송합니다)
-sort타입을 파라미터로 전달 할수 있다.
-순차적 정렬(asc), 역순 정렬(desc) 지정할수 있다.
정렬기준을 sort 로 만들어준다.
PageReuqest.of(페이지번호, 개수, 정렬기준) 으로 작성해준다.
forEach() 반복문으로 출력
※정렬 조건은 and() 를 이영해서 여러 개의 정렬 조건을 다르게 지정할 수 있다.