JAVA
Jsp 주기적으로 특정 메소드 호출하기
인생마린
2021. 5. 22. 11:07
반응형
Scheduler.java
package controller.listener;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class Scheduler implements ServletContextListener {
private volatile ScheduledExecutorService executor;
public void contextInitialized(ServletContextEvent sce)
{
executor = Executors.newScheduledThreadPool(2);
executor.scheduleAtFixedRate([실행시킬메소드], 0, 3, TimeUnit.MINUTES);
}
public void contextDestroyed(ServletContextEvent sce)
{
final ScheduledExecutorService executor = this.executor;
if (executor != null)
{
executor.shutdown();
this.executor = null;
}
}
}
web.xml에 자신이 만든 클래스를 추가해줍니다.
<!-- configure the context listener -->
<listener>
<listener-class>controller.listener.Scheduler</listener-class>
</listener>
contextInitialized는 서블렛 서버 시작시 호출 됩니다. 거기에 스케줄러를 호출해 3분마다 스케줄을 실행할 수 있습니다.
반응형