프롬프트 AI&OpenAPI&공공데이터를 활용한 웹앱개발자 양성 과정 42일차

서명원·2024년 2월 6일

1. 페이지네이션 관련 실수 기록

페이지네이션 공식을 적었는데 문제가 하나 생겼다.
LIMIT 명령어를 통해 firstItemIndex부터 itemsPerPage까지 가져오는데 데이터가 하나면 가져오지 못한다.
LIMIT는 1부터 세는게 아니라 0부터 센다.

다음같이 수정하였다.

2. RequestParam DefaultValue

넘오는 값이 null일때 다음과 같이 default 값을 지정할 수 있다.

3. script 태그

어노테이션 형식으로 mybatis를 사용할 때, 동적 쿼리를 쓰고 싶으면 아래와같이 script태그로
감싸주면 된다.

4. 실수기록

감으로 하지말고 문서 제대로읽자..

에러때문에 한참을 해맸다.
원인은 동적쿼리문에 파라미터를 #{}형식으로 쓴 것이었다.
#{} 제거 후 정상적으로 프로그램이 실행되었다.

5. my바티스 사용할 때 주의점

Mapper 클래스는 오버로딩이 안된다.

6. ${param}

param.파람명 으로 parameter에 있는 값을 바로 뽑아 쓸 수 있다.
즉 현재 쿼리 string 바로 참조 가능.
eX) ${param.page == i ? 'btn-active' : '' }

7. 페이지네이션 로직 재구성

항상 현재 페이지가 가운데에 위치하는 방식으로 페이지네이션을 다시 구성했다.
하고나서 생각한건데 기존 로직 변경하는게 아니라
인터페이스 하나 만들고 거기에 연결 했으면 더 좋았을 것 같아.(갈아끼우기 편하게)

profile
백엔드 취업을 꿈꾸는 일본어 전공자

0개의 댓글