2014-09-12 148 views
0

我正在使用JSP的服務器端應用程序。現在,問題在於我必須在HTML中生成表格,該表格將由Java函數進行計算。 Java函數需要花費很多時間才能完成,所以我想在表格的位置顯示其餘的HTML視圖和微調。當函數執行完成後,我想創建表並用行更新它。我不確定如何用JSP實現這一點。我們如何在JSP中異步調用Java函數並隨後更新HTML視圖?任何幫助都感激不盡。JSP中的異步處理

+0

因此,使用Ajax加載表。 – epascarello 2014-09-12 13:54:32

回答

0

爲了不重新發明輪子,我建議你使用基於javascript的實現,比如JQuery DataTables,這樣你就可以輕鬆地裝載你的表,把繁重的工作委託給服務器端。如果沒有這樣的組件,你最終不得不自己編寫代碼(而不是真的)來使用ajax加載你的表(也許使用prototype.js?),並顯示一個旋轉輪的動畫gif結果還沒有準備好。但是,測試和調整這樣的事情以防止超時是IMO比使用JQuery DataTables等穩定且經過良好測試的庫更差。

+0

那麼問題是數據是由Java函數計算的。所以我的主要問題是,我如何異步執行該函數? – Aarkan 2014-09-12 14:11:46

+0

這取決於需要多少時間。如果只需要幾秒鐘,延遲加載你的表就沒有問題,因爲用戶可以等待,這不會比典型的http請求超時長。但是,如果您的功能需要10分鐘或更長的時間,那麼您必須創建一個基於票據的系統(就像NCBI中的基因匹配過程一樣),您提交請求並獲得一張票以獲得答案完成) – Leo 2014-09-12 14:14:51