2

我有一个建立在 JBOSS 7 AS 之上的服务器端。

我需要每 24 小时运行一次批处理以在数据库上执行一些操作。虽然实现该服务很容易,但我想知道最好的启动是...有可用的示例吗?

在我以前的 JBOSS 时代,我会通过一个 boostrap servlet 来启动它。

干杯。

4

1 回答 1

1

使用 EJB3.1 计时器:http: //javahowto.blogspot.be/2010/04/ejb-31-timer-simple-example.html

@Stateless
public class BatchLauncher {

   @Schedule(hour = "12", minute = "0")
   private void checkInventory() {

默认情况下,JBoss 7 将扫描您的 war/ear 以查找 ejb3 注释类。对于@Stateless bean,JBoss 将创建一个单例并使其可以通过 JNDI 访问。

在单例中,JBoss 7 将找到 @Schedule 注释并使用时间表安排方法调用。

于 2012-10-24T18:38:08.100 回答