java - 如何解决按登录时间分页加载数据会有重复的问题?
PHP中文网
PHP中文网 2017-04-17 13:25:20
0
2
945

场景是这样的:安卓客户端要按登录时间在首页显示用户列表,服务端提供数据,每次下拉请求,相当于是从服务端请求加载下一页的的数据,但是这样会有一个问题,假如第一页服务端给了客户端最新的数据,但是在加载第二页之前,又有几个新的用户登录了进来,这样这些新用户就是最新登录的,所以在第二页的时候就会有一些第一页的用户,请教给位大神怎么解决这个问题?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回覆(2)
小葫芦

幾個方案:

  1. 客戶端去重,優點:實作簡單。缺點:數據不準確。

  2. (推薦)根據時間排序,客戶端獲取下一頁資料時傳回上次最後一條資料的登入時間,資料庫查詢的時候select * from table where 登入時間

  3. 給每個客戶端記錄一個時間戳,取得第一頁的時候更新這個時間戳,查詢下一頁的時候select * from table where 登入時間

左手右手慢动作

如果用戶順序是不變的,可以每次記錄顯示的最後一個用戶,從服務端獲取到下一頁後,先搜下如果有之前的最後一個用戶,就跳過他以及之前的用戶,為了避免用戶不夠了可能要根據實際情況每次多加載幾個。如果本來應該在第二頁的用戶因為重新登陸而跑到最前邊去了,應該也沒問題吧,一般也不會有人能注意到。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板