-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
오늘 배운 내용
- JPA Auditing
- @EnableJpaAuditing을 사용하여 Auditing 적용
- @MappedSuperclass로 BaseTimeEntity와 BaseEntity를 추상 클래스로 만들고 createdAt, updatedAt, createdBy, updatedBy 필드를 공통으로 사용
- @EntityListeners(AuditingEntityListener.class)를 통해 엔티티의 생성 및 수정 시 관련 필드가 자동으로 갱신
- AuditorAware를 구현하여 현재 로그인한 사용자의 ID를 createdBy와 updatedBy에 자동으로 갱신
- 페이징 및 정렬
- Pageable과 PageRequest 객체를 사용하여 DB 쿼리에 페이징 및 정렬 조건을 동적으로 추가
- JpaRepository에서 Page를 반환 타입으로 사용하여 페이징 처리된 결과 확인
- Page 객체가 제공하는 getTotalPages(), getTotalElements(), hasPrevious(), hasNext() 등의 메서드를 JSP 뷰에서 활용하여 페이지네이션 UI를 구현
- @RequestParam으로 페이지 번호, 페이지 크기, 정렬 기준, 정렬 방향을 받아와 동적인 목록 조회
- Redis / MongoDB
특히 어려웠던 것
- Sort사용시 Order By 사용 불가
앞으로의 활용 방법
- 관리자 페이지 등에서 데이터 변경 이력을 추적하고 표시하는 데 Auditing 정보를 적극 활용
- 대량의 데이터를 조회하는 모든 API에 페이징 및 정렬 기능을 적용하여 시스템 성능 향상
복습/과제 계획
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels