您好,登錄后才能下訂單哦!
這篇文章主要講解了“java滾動(dòng)加載怎么實(shí)現(xiàn)”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“java滾動(dòng)加載怎么實(shí)現(xiàn)”吧!
分頁加載通常適用于客戶端,通常是為了防止一次返回導(dǎo)致客戶端崩潰,所以采用下拉加載更多的方式,為了防止數(shù)據(jù)重復(fù)的現(xiàn)象,數(shù)據(jù)傳遞建議使用唯一標(biāo)識(shí)id。
普通的下拉加載方式
對于普通的下拉加載我們通常處理方式分為以下步驟:
1 客戶端傳遞請求數(shù)目大小和上一次請求最后一條數(shù)據(jù)的id或者時(shí)間(如果是第一次請求則可以不傳遞)
2 對于后端按照終端請求的id或者時(shí)間進(jìn)行某種特定次序排列,取固定數(shù)目返回給終端。由此便可以保證終端每次獲取到正確數(shù)據(jù)。
核心sql查詢語句
SELECT * FROM admin WHERE id < 10000 ORDER BY id DESC LIMIT 1, size
具體定義的數(shù)據(jù)結(jié)構(gòu)
# 接口地址
/scroll/list
# 請求方式
HTTP GET
# 入?yún)?/code>
{
"size":10,//請求大小
"id":1 //返回?cái)?shù)據(jù)最后一條id
}
# 出參
# 成功
{
"flag": 1,
"result": {
"hasMore": ture, //是否有更多數(shù)據(jù)
"total": 68,
"list": [
{
"id":1, //文件Id
"desc":"描述", //可以為空
"name":"David"
},
{
"id":2, //文件Id
"desc":"描述", //可以為空
"name":"Tom"
},
...
]
}
}
#失敗
{
"flag":0,
"result":"錯(cuò)誤信息"
}
對于包含特定條件次序的分頁加載的處理方式
比如說,項(xiàng)目要求已經(jīng)置頂?shù)臄?shù)據(jù)的排列在所有數(shù)據(jù)的最前面(當(dāng)然置頂數(shù)據(jù)的id可能比較小)那么就需要先按照置頂排序、id排序,然后查詢數(shù)據(jù)(對于查詢數(shù)據(jù),則要根據(jù)不同的條件進(jìn)行不同的處理)。
核心sql查詢語句
SELECT * FROM admin WHERE #if(id!=null && state==2) ((id < 21 AND state=2) OR state != 2)) #elseif(id!=null && state!=2) id < 23 ORDER BY FIELD(state,2) DESC, id DESC LIMIT 1, size
具體定義的數(shù)據(jù)結(jié)構(gòu)
## 接口地址
/scroll/list
```
## 請求方式
HTTP GET
## 入?yún)?/code>
{
"size":10,//請求大小
"id":1 //返回?cái)?shù)據(jù)最后一條id,第一次請求不用傳遞
"state":2 //返回最后一條數(shù)據(jù)的狀態(tài)信息,第一次請求不用傳遞
}
## 出參
### 成功
{
"flag": 1,
"result": {
"hasMore": ture, //是否有更多數(shù)據(jù)
"total": 68,
"list": [
{
"id":1, //文件Id
"desc":"描述", //可以為空
"name":"David",
"state":1
},
{
"id":2, //文件Id
"desc":"描述", //可以為空
"name":"Tom",
"state":2
},
...
]
}
}
### 失敗
{
"flag":0,
"result":"錯(cuò)誤信息"
}
感謝各位的閱讀,以上就是“java滾動(dòng)加載怎么實(shí)現(xiàn)”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對java滾動(dòng)加載怎么實(shí)現(xiàn)這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。