gpt4 book ai didi

java - 在 Tomcat 6 中自动化 Quartz 计划作业

转载 作者:行者123 更新时间:2023-12-01 13:20:34 25 4
gpt4 key购买 nike

我可以使用 Quartz 2 Scheduler 来调度 Java 程序。每当 Apache 服务器启动时,我都需要启动该调度程序。如何做到这一点?

最佳答案

有多种方法可以做到这一点。您可以只使用带有静态初始化 block 的普通 Java 类来初始化 Quartz 计时器。如果您想以 JavaEE 方式实现,那么您可以使用 EJB3.x 或 Servlet。

使用 EJB3.x Singleton 的示例-

import javax.annotation.PostConstruct;
import javax.ejb.Singleton;
import javax.ejb.Startup;

@Startup
@Singleton
public class QuartzTimerBean{
@PostConstruct
public void init() {
...
// Start Quartz timer here
...
}

@PreDestroy
public void cleanup(){
...
// Clean up Quartz timer
...
}
}

使用 ServletContextListener 的示例

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

public class QuartzTimerListener implements ServletContextListener{

@Override
public void contextInitialized(ServletContextEvent arg0) {
...
// Start Quartz timer here
...
}

@Override
public void contextDestroyed(ServletContextEvent arg0) {
...
// Clean up Quartz timer
...
}
}

web.xml

<web-app ...>
<listener>
<listener-class><fully qualified path>.QuartzTimerListener</listener-class>
</listener>
</web-app>

关于java - 在 Tomcat 6 中自动化 Quartz 计划作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22048164/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com