我正在使用一個應用程序(使用spring框架),其中當添加新記錄時,將當前時間存儲在數據庫中。處理服務器和客戶端的時區偏移
所以,當這些記錄顯示,在前臺用戶,顯示的時間是按照服務器的時區,而不是客戶的。由於該應用程序面向全球用戶,因此如果用戶看到他們剛添加的記錄時間不同,則可能會讓用戶感到困惑。
我在猜測這個問題必須由所有用戶位於全球的應用程序所面對。
什麼是解決此問題的最佳方法?
我做了一些搜索和SO閱讀幾個答案後,考慮兩個選項 -
1)獲得使用JavaScript或從IP地址的用戶的時區,並在數據庫中存儲的服務器時間,而不是。
2)顯示的用戶,相對於時間當前時間最近添加記錄(如:added 2 mins ago
高達added 1 day ago
及更早的記錄顯示的實際日期。
不考慮,因爲我覺得它會導致第一個表中的主鍵和created at
列之間的不一致性當前可能不會有害,因爲用戶只能看到他們自己的記錄,但是如果將來要向他們顯示其他記錄,將導致混淆。第二種方法對我來說很好,事實上,我可以看到類似的東西(例如,在最新的問題中,相對時間是s並且幾天前添加的特色問題顯示「實際」日期和時間),但不確定是否在這裏解決同一問題。
想知道其他方法。
以您接受的方式回答您的問題? – Olaf 2011-07-11 17:12:02