@Scheduled

2023. 2. 24. 16:14@Annotaion Book

@Scheduled는 Spring Framework에서 주기적인 작업을 실행하기 위해 사용되는 어노테이션 중 하나입니다.

@Scheduled 어노테이션을 사용하면, 지정된 주기로 작업을 실행할 수 있습니다. 주기는 cron 표현식, 고정된 간격 또는 초 단위로 지정할 수 있습니다.

아래는 @Scheduled 어노테이션을 사용하여 5초마다 작업을 실행하는 예시 코드입니다.

@Service
public class UserServiceImpl implements UserService {
 
    @Scheduled(fixedRate = 5000)
    public void doSomething() {
        // Do something
    }
}

위 코드에서는 @Scheduled 어노테이션을 사용하여 doSomething() 메서드가 5초마다 실행되도록 지정하고 있습니다. fixedRate 속성을 사용하여 간격을 지정하였습니다.

@Scheduled 어노테이션은 다양한 속성을 갖습니다. 주요 속성은 다음과 같습니다.

  • fixedDelay: 이전 작업이 완료된 후 지정된 간격만큼 대기 후 다음 작업을 실행합니다.
  • fixedRate: 이전 작업이 시작된 후 지정된 간격만큼 대기 후 다음 작업을 실행합니다.
  • initialDelay: 초기 지연 시간을 지정합니다.
  • cron: cron 표현식을 사용하여 작업을 실행합니다.

@Scheduled 어노테이션을 사용하여 주기적인 작업을 실행할 때는, 해당 작업이 오랫동안 실행될 가능성이 있으므로, 작업이 잘 종료되었는지 확인하는 로직 등을 구현하는 것이 좋습니다.

'@Annotaion Book' 카테고리의 다른 글

@ExceptionHandler  (0) 2023.02.24
@Async  (0) 2023.02.24
@RequestParam  (0) 2023.02.24
@Value  (0) 2023.02.24
@Bean  (0) 2023.02.24