2015-10-19 72 views
0

我是J2EE新手,我正在處理幾項任務。其中一個是: 我有一個Web應用程序,它的工作方式類似於Apache Tomcat 7託管的報告工具箱,我需要一個重量級的工作來安排每小時或其他間隔運行,我使用Google搜索並找到Apache Sling,這是一種獨立應用程序服務器用於內容中心應用程序。我想知道是否有其他解決方案可以做Apache Tomcat或不? 也是其重要的解決方案將是標準和可靠的。如何在Java Web應用程序服務器上安排作業

+0

計劃中的任務在做什麼? – Stefan

+0

@Stefan它在一個oracle數據庫上運行多個查詢,並在那個結果集上進行處理,每次處理可能運行超過200K行 – DjBuddy

回答

0

如果沒有軟件包爲您工作,一個選項將實現一個ServletContextListener。這是一個在您的網站上線時啓動的對象。唯一的問題是你必須管理所有的調度。

1

ScheduledExecutorService這是標準的Java API的一部分。請參閱Executors中的new*Schedule*工廠方法。

對於更重量級/可配置的選項有Quartz。 Quartz的一個很好的功能是支持cron expressions

+0

感謝您的迴應,Quartz是否與tomcat集成? – DjBuddy

+0

我不確定quartz是否包含[ServletContextListener](https://docs.oracle.com/javaee/6/api/javax/servlet/ServletContextListener.html)。如果沒有,你需要創建一個並將其包含在你的'web.xml'中 –

相關問題