2011-02-28 79 views
0

如何每15分钟运行一次JSP代码而不运行它。我想每隔15分钟定期执行一次jsp程序代码。如何每15分钟运行一次JSP代码而不运行它

+0

这是奇怪的要求,你不应该继续这一点。似乎你正在尝试为其他站点执行此操作,而且您没有实际代码 – 2011-02-28 11:48:13

回答

-2

您可以编写一个JAVA代码,它将定期触发JSP代码。如果您对此解决方案感兴趣,我可以帮助您完成此操作(提供示例代码)。

+0

我的意图是制作一个Java应用程序,它将定期执行JSP代码(调用URL)。 – Abhishek 2011-02-28 13:59:18

2

Java代码doesn't属于一个JSP文件。只需将该代码移入真正的Java类。通过这种方式,您可以在ServletContextListener中使用ScheduledExecutorService来定期执行它。

@WebListener 
public class Config implements ServletContextListener { 

    private ScheduledExecutorService scheduler; 

    @Override 
    public void contextInitialized(ServletContextEvent event) { 
     scheduler = Executors.newSingleThreadScheduledExecutor(); 
     scheduler.scheduleAtFixedRate(new Task(), 0, 15, TimeUnit.MINUTES); 
    } 

    @Override 
    public void contextDestroyed(ServletContextEvent event) { 
     scheduler.shutdownNow(); 
    } 

} 

Task类实现Runnable

public class Task implements Runnable { 

    public void run() { 
     // Do your job here. 
    } 

} 

或者,如果您的Java EE容器能够执行此操作,请使用容器提供的作业调度功能。详细的答案取决于你使用的容器。

相关问题