如何将bean作为后台服务运行?

时间:2015-03-26 16:07:28

标签: java jboss java-ee-7 jboss-eap-6

我需要能够在启动时启动bean并使用某种内部事件/时间循环(寻找要处理的数据记录)在后台持续运行它。我想知道正确的Java EE 7 / JBoss EAP 6.2方法是做什么的。

有什么想法吗?

3 个答案:

答案 0 :(得分:2)

使用Quartz Scheduler框架并按配置启动作业。

答案 1 :(得分:0)

这取决于你想要达到的目标。您可以通过多种方式实现既定目标。我能想到的是: -

1)使用spring在启动时自动实例化单例bean并在启动时调用init方法

2)在Web应用程序方面,您可以使用loadOnstartUp servlet配置

3)使用夸脱作业运行后台作业

答案 2 :(得分:0)

在这种情况下,EJB应该可以正常工作(标准Java EE - 不需要外部框架)

我假设您需要数据的“拉”模式,而不是让组件“监听”数据事件

  1. 启动Singleton EJB
  2. 编写将查询数据存储库的业务逻辑

    @Singleton @Startup //容器在启动时或部署应用程序时初始化bean 公共类MySingletonEJB {

    @Schedule //按照要求的时间表配置此注释,例如通过类似Cron的语法 public void executeJob(){ // ....搜索数据记录 }

    }

相关问题