2012-10-03 56 views
1

我有一個Java EE應用程序,用戶在其中以線性方向在許多頁面上執行一系列操作。在第一頁中,我詳細介紹了執行數據庫查詢所需的詳細信息,其中最後一個結果是必需的。我不想讓用戶等待這個數據庫查詢在頁面之間執行,而是希望在用戶繼續時在後臺運行它。Java EE:在後臺運行數據庫查詢

這樣做的最好方法是什麼?

我知道在Java EE應用程序中使用線程是不鼓勵的。

+0

只是爲這個功能創建一個bean .. –

+0

@AshokRaj謝謝你。謹慎闡述? –

+0

你使用任何框架?或只是jsp/servlets喜歡? &它是MVC?你知道JMS嗎? –

回答

3

您可以使用第一步中提供的數據來調用異步EJB或Servlet上的操作(但如果使用Java EE,則應該使用EJB,因爲它更適合這類工作)。
看看這裏:Execute subprocesses in JavaEE 6

您可以保存Future<?>對象異步方法返回,並在最後一頁上,調用其get(-)命令。您甚至可以在最後階段阻止用戶,因爲您可能想向他展示結果,而不是讓他繼續。

1

在J2EE應用程序中管理線程是令人沮喪的,因爲應用程序服務器不瞭解您的自定義線程,因此無法管理連接到這些線程的資源。但是一些應用服務器如WebSphere,WebLogic支持使用線程。你可以使用像commonj這樣的框架來實現這一點。

請問你應該看看這個選項。