Android Retrofit2數(shù)據(jù)解析代碼解析
在弄數(shù)據(jù)解析這塊,浪費(fèi)了很長(zhǎng)的時(shí)間,最開始一直覺得傳過來用對(duì)象接收的,類型是json,往那個(gè)方式去想了。搞了很久。
后來看了別人寫的才發(fā)覺,真是很簡(jiǎn)單,感謝 https://www.jianshu.com/p/d0081e8a7edc 給我啟發(fā)。
加入的jar包
// Retrofit庫(kù)
implementation 'com.squareup.retrofit2:retrofit:2.0.2'
implementation 'com.squareup.retrofit2:converter-gson:2.0.2'
服務(wù)端傳過來的數(shù)據(jù):
{
"code":0,
"resultMsg":"OJBK",
"resultState":"SUCCESS",
"resultObj":[
{"id":null,"nickname":"科科","head_img":null,},
{"id":null,"nickname":"科科","head_img":null,},
{"id":null,"nickname":"科科","head_img":null,},
{"id":null,"nickname":"科科","head_img":null,},
{"id":null,"nickname":"李逵","head_img":"",}]}
創(chuàng)建一個(gè)WebResponse對(duì)象,來接收數(shù)據(jù):
package controller.hzl.com.hzl1.model; import java.util.List; import controller.hzl.com.hzl1.entity.HNOTICELOG_E; public class WebRespone { /** * 返回狀態(tài)碼 */ private Integer code; /** * 返回消息 */ private Object resultMsg; /** * 返回結(jié)果 */ private String resultState; /** * 返回?cái)?shù)據(jù)對(duì)象 */ private List<HNOTICELOG_E> resultObj; public Integer getCode() { return code; } public Object getResultMsg() { return resultMsg; } public String getResultState() { return resultState; } public void setCode(Integer code) { this.code = code; } public void setResultMsg(Object resultMsg) { this.resultMsg = resultMsg; } public void setResultState(String resultState) { this.resultState = resultState; } public List<HNOTICELOG_E> getResultObj() { return resultObj; } public void setResultObj(List<HNOTICELOG_E> resultObj) { this.resultObj = resultObj; } }
注意,這個(gè)對(duì)象里面有一個(gè)是list類型。
public class HNOTICELOG_E { private Long id; private String nickname; private String head_img; private String noticeContext; private String relUserId; private String relNoticeUserId; private Date createTime; private String createUser; private Date updateTime; private String updateUser; private Integer status; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getNoticeContext() { return noticeContext; } public void setNoticeContext(String noticeContext) { this.noticeContext = noticeContext == null ? null : noticeContext.trim(); } public String getRelUserId() { return relUserId; } public void setRelUserId(String relUserId) { this.relUserId = relUserId == null ? null : relUserId.trim(); } public String getRelNoticeUserId() { return relNoticeUserId; } public void setRelNoticeUserId(String relNoticeUserId) { this.relNoticeUserId = relNoticeUserId == null ? null : relNoticeUserId.trim(); } public Date getCreateTime() { return createTime; } public void setCreateTime(Date createTime) { this.createTime = createTime; } public String getCreateUser() { return createUser; } public void setCreateUser(String createUser) { this.createUser = createUser == null ? null : createUser.trim(); } public Date getUpdateTime() { return updateTime; } public void setUpdateTime(Date updateTime) { this.updateTime = updateTime; } public String getUpdateUser() { return updateUser; } public void setUpdateUser(String updateUser) { this.updateUser = updateUser == null ? null : updateUser.trim(); } public Integer getStatus() { return status; } public void setStatus(Integer status) { this.status = status; } public String getNickname() { return nickname; } public void setNickname(String nickname) { this.nickname = nickname; } public String getHead_img() { return head_img; } public void setHead_img(String head_img) { this.head_img = head_img; } }
相當(dāng)于是resultObj 下面的直接是一個(gè)List。這樣,就直接能夠接收到服務(wù)端傳的json里面的List對(duì)象。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android網(wǎng)絡(luò)請(qǐng)求框架Retrofit詳解
- Android Retrofit 2.0框架上傳圖片解決方案
- 簡(jiǎn)略分析Android的Retrofit應(yīng)用開發(fā)框架源碼
- Android app開發(fā)中Retrofit框架的初步上手使用
- Retrofit和OkHttp如何實(shí)現(xiàn)Android網(wǎng)絡(luò)緩存
- Android Retrofit2網(wǎng)路編程實(shí)現(xiàn)方法詳解
- Android中Retrofit的簡(jiǎn)要介紹
- 基于Retrofit2+RxJava2實(shí)現(xiàn)Android App自動(dòng)更新
- Android retrofit上傳文件實(shí)例(包含頭像)
- Android 封裝Okhttp+Retrofit+RxJava,外加攔截器實(shí)例
- Android Retrofit 中文亂碼問題的解決辦法
- Android使用 Retrofit 2.X 上傳多文件和多表單示例
- Android中Retrofit 2.0直接使用JSON進(jìn)行數(shù)據(jù)交互
- Android Retrofit框架的使用
相關(guān)文章
Android實(shí)戰(zhàn)教程第六篇之一鍵鎖屏應(yīng)用問題解決
這篇文章主要為大家詳細(xì)介紹了Android一鍵鎖屏應(yīng)用開發(fā)過程中出現(xiàn)問題的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11Android Studio Intent隱式啟動(dòng),發(fā)短信,撥號(hào),打電話,訪問網(wǎng)頁(yè)等實(shí)例代碼
這篇文章主要介紹了Android Studio Intent隱式啟動(dòng),發(fā)短信,撥號(hào),打電話,訪問網(wǎng)頁(yè)等實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下2016-12-12Android使用SurfaceView實(shí)現(xiàn)飄贊動(dòng)畫
這篇文章主要為大家詳細(xì)介紹了Android如何使用SurfaceView實(shí)現(xiàn)飄贊動(dòng)畫,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03Android studio4.1更新后出現(xiàn)的問題詳解
這篇文章主要介紹了Android studio4.1更新后出現(xiàn)的問題詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10android 使用 IJKPlayer 播放視頻流的實(shí)現(xiàn)代碼
這篇文章主要介紹了android 使用 IJKPlayer 播放視頻流,這需要借助 IAndroidIO 這個(gè)接口,也可以用于播放本地文件,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-11-11怎樣才能導(dǎo)入別人的android項(xiàng)目不再報(bào)錯(cuò)
每次看到好的項(xiàng)目都想拿過來看看源碼,可是導(dǎo)入以后各種報(bào)錯(cuò)怎么辦?源碼有問題嗎?有這種可能,但更多的可能性是你沒有正確導(dǎo)入這個(gè)項(xiàng)目2021-08-08