2016-07-26 4 views
-1

"String"유형의 나머지 API 끝점이 있습니다. 끝점 메서드의 본문에서 데이터베이스에 쓸 20 분마다 실행되는 ScheduledThreadPoolExecutor 개체를 구현했습니다. 그러나 API를 전개하고 엔드 포인트를 실행할 때 엔드 포인트가 예상 한 문자열을 리턴하더라도 데이터베이스는 절대 채워지지 않습니다. 내가 간단한 자바 프로그램에서 정확한 동일한 ScheduledThreadPoolExecutor 코드를 실행하고 그것은 완벽하게 데이터베이스에 씁니다, 그래서 나는 그것이 스케줄링 코드 때문에 될 수 없다는 것을 알고 있습니다. 누구든지 문제가 무엇인지 알 수 있습니까? 감사!ScheduledThreadPoolExecutor가 REST API에서 작동하지 않습니다.

+0

문제와 관련된 세부 정보 (예 : 코드 샘플 및 결과)를 알려주십시오. 이렇게하면 문제를 해결하는 데 도움이됩니다. 감사! – bpachev

답변

0

리소스 클래스의 정적 필드에 ScheduledThreadPoolExecutor 개체에 대한 참조를 보유해야합니다. 그런 다음 자원 클래스의 생성자에서 타이머를 시작하십시오. 리소스 클래스는 @Singleton 주석이 주석 된 Singleton이어야합니다. 그렇지 않으면 클라이언트에서 요청을받을 때마다 타이머가 재설정됩니다.

관련 문제