2024/12/10 3

[TIL] Pageable, PageRequest - 페이지네이션

페이징이란 대량의 데이터를 한 번에 처리하지 않고, 일정한 단위로 나누어 처리하는 방법이다.이런 페이징 처리를 위해 필요한 인터페이스인 Pageable과 클래스 PageRequest를 알아보자. Pageable 인터페이스  Pageable 인터페이스는 Spring Data JPA에서 페이징 처리를 위한 정보를 캡슐화하는 역할을 한다.Pageable 인터페이스는 페이징 정보를 처리하기 위한 다양한 메서드를 제공한다. int getPageNumber() 현재 페이지 번호를 반환 (0부터 시작) int getPageSize() 한 페이지당 항목 수를 반환 long getOffset() 쿼리할 때 건너뛸 레코드 수를 반환(페이지 번호 * 페이지 크기) https://docs.spring.io/spring-dat..

TIL/Spring 2024.12.10

[TIL] MySQL 출력할 행의 개수 제한하기 - LIMIT, OFFSET

LIMTI '처음부터 시작해서 몇 개의 행을 반환할 것인가?' LIMIT는 반환할 행의 최대 개수를 제한한다.// 처음 10개의 행만 반환하기SELECT * FROM table_name LIMIT 10;  OFFSET '어디부터 시작할 것인가?' OFFSET은 결과 집합에서 처음 몇 개의 행을 건너뛸 것인지를 지정한다.// 처음 5개의 행을 건너 뛰고 6번째 행부터 10개의 행 반환(= 6번~15번 행)SELECT * FROM table_name LIMIT 10 OFFSET 5;  LIMIT와 OFFSET을 활용한 Pagination 구현 LIMIT와 OFFSET을 활용하면 페이지네이션을 구현할 수 있다.만약 20개의 행을 한 페이지로 보고싶다면 LIMIT 20 을 사용한다.첫 번째 페이지는 OFFSET..

TIL/DB 2024.12.10

[Trouble shooting] 일정 관리 앱 만들기 - 트러블 슈팅

(24.12.04) 1. 한글 인코딩 문제로 인해 발생한 MySQL 다운로드 문제 [문제 상황]MySQL을 설치하는 과정 중 계속 같은 단계에서 오류가 발생했다.처음에는 버전 문제인가 싶었지만, 버전과 관계 없이 모종의 이유로 설치가 막혔다. 문제 화면을 캡쳐해두지는 못했지만 아래 빨간 박스로 표시해둔 단계를 넘어가지 못했다. 무엇이 문제인가 싶어서 튜터님과 함께 로그기록을 살펴보니 대략 어떤 파일을 찾을 수 없다는 문구가 나와있었다. [해결 시도]그 뒤로는 관리자 권한으로 설치 시도도 해보았고, 또 파일 설치 위치가 ProgramData로 되어있었는데, ProgramData는 숨겨진 파일이라 찾을 수 없다고 하는건가 싶어서 Program Files로 설치 경로를 바꿔보기도 했다. 하지만 무슨 짓을 해도..