2011-12-28 48 views
0

我正在開發一個java servlet,它在某個指定的時間觸發了一些動作,並且由於我將有很多用戶,我想我應該存儲用戶ID和時間以在數據庫中觸發動作而不是記憶。對數據庫存儲時間的java火動作

所以我需要跟蹤數據庫中的時間來觸發這樣的動作,我必須通過這種方式查詢每一分鐘,並檢查它是否現在或者是否已經傳遞來觸發這個動作。或

2-做數據庫中的存儲過程/觸發器來通知我的servlet現在是觸發操作的時間。

我該如何做這些特別的第二種方法可以t-sql做到這一點還是還有什麼可以做到這一點? 每種方法的優缺點是什麼?你有推薦更好的方法嗎?

感謝

回答

0

我更喜歡將它存儲在數據庫中,並讓需要的時候做數據庫調用你的servlet,這樣你就不需要做輪詢邏輯在你的web應用程序,這將節省大量的資源。對於這種方法,如果它是Oracle數據庫,我記得有一個webservice調用機制(這是我執行此操作的一段時間,所以我忘記了確切的命名約定)。我認爲這是最好的辦法。

+0

是不是調試這些數據庫調用會比較難以調試應用程序客戶端代碼? – Tommy 2011-12-28 23:41:09

+0

編號調試難度在每個地方都一樣,是一次。但運行時我們獲得更多優勢。 – kosa 2011-12-29 00:27:37