ℹ️ 상단 폼 섹션은 숨기고 아래 Summary에서 핵심만 보여줍니다.
상세 서술은 Details 섹션을 사용하세요.
Details
팝업스토어 상태 스케줄러 리팩토링
개선해야 할 목록
findAll() 전체 조회로 조회가 늦어짐.
- 전체 조회한 엔티티 중 업데이트 되지 않는 객체들도
saveAll()로 전체 저장하는 낭비.
- 트랜잭션 범위 지정이 없어 각각의 트랜잭션에서 처리중.
- 팝업스토어가 종료된 상태는 업데이트할 필요가 없음.
개선 사항
findByStoreStatusInAndIsDeletedFalse(RESOLVED, PENDING)로 진행중, 진행 예정, 삭제 안 된 데이터만 조회.
@Transactional로 하나의 트랜잭션에서 처리.
- RESOLVED, PENDING일 때 오늘 날짜에 맞춰 비교하는 로직.
LocalDate.now() 오늘 날짜를 빈으로 등록해서 외부에서 주입.
- 영속성에 등록된 엔티티는 dirty checking으로 저장.
Details
팝업스토어 상태 스케줄러 리팩토링
개선해야 할 목록
findAll()전체 조회로 조회가 늦어짐.saveAll()로 전체 저장하는 낭비.개선 사항
findByStoreStatusInAndIsDeletedFalse(RESOLVED, PENDING)로 진행중, 진행 예정, 삭제 안 된 데이터만 조회.@Transactional로 하나의 트랜잭션에서 처리.LocalDate.now()오늘 날짜를 빈으로 등록해서 외부에서 주입.