我正在計劃一個應用程序,它必須提供非常類似於第三方擴展代碼的Java EE容器的服務。基本上,這個應用程序所做的是找到一組工作項目(目前,計劃使用Hibernate)並將其分派給工作項目消費者。如何編寫一個或多或少作爲容器的應用程序?
工作項消費者加載項目詳細信息,調用第三方擴展代碼,然後如果第三方代碼沒有失敗,則更新工作項上的某個狀態並提交所有完成的工作。
我明確沒有把它寫成Java EE應用程序。實質上,我的應用程序必須提供容器的許多服務,但是;它必須提供事務管理,連接池和管理,以及一定的部署支持。我如何或者A)直接提供這些,或者B)選擇第三方庫來提供它們。由於大型項目的需求,擴展編寫者將使用Hibernate,如果這有什麼區別的話。
值得注意的是,在我提到的所有功能中,我最不瞭解的是事務管理。我如何提供這項服務給在我的容器中運行的擴展代碼?
+1工作 - 完美。我希望我先看過它。 – duffymo 2009-04-22 23:16:33
好的答案,但Quartz是用於調度而不是線程。它當然使用線程,但它的功能是調度。儘管如此,還是一個很好的答案 – Robin 2009-04-23 13:19:58