package com.takensoft.cms.popup.Schedule; import com.takensoft.cms.popup.dao.PopupDAO; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; /** * @author : 박정하 * @since : 2024.05.23 * * 팝업 종료일이 된 팝업 제거를 위한 스케쥴러 */ @Component public class PopupScheduler { private final PopupDAO popupDAO; public PopupScheduler(PopupDAO popupDAO) { this.popupDAO = popupDAO; } /** * @author : 박정하 * @since : 2024.05.23 * * 매일 자정에 종료일이 지난 팝업 삭제 */ @Scheduled(cron = "0 0 0 * * *") @Transactional(rollbackFor = Exception.class) public void cleanExpiredPopups() throws Exception { popupDAO.cleanExpiredPopups(); } }