接口调用+注解 建立相应的实体类,利用GsonFormat; 还需要数据接口,这里我们用公共类表示 完整代码就是以上了。此博客仅用于自己每天学习
首先老规矩加入所需要的依赖
这里要根据自己的gradle进行适配的依赖,否则会引起不必要的错误!!!
另外Retrofit是基于Okhttp请求,需要进行网络请求,所以这里我们还要加入网络权限:第一条就可以=-=
接下来就是上代码环节了package com.example.test4_7zfz; import androidx.appcompat.app.AppCompatActivity; import retrofit2.Retrofit; import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory; import retrofit2.converter.gson.GsonConverterFactory; import rx.Observable; import rx.Observer; import rx.android.schedulers.AndroidSchedulers; import rx.schedulers.Schedulers; import android.os.Bundle; import android.util.Log; import com.example.test4_7zfz.http.server.GoodsService; import com.example.test4_7zfz.utils.Constants; import com.example.test4_7zfz.utils.Entity; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate( savedInstanceState ); setContentView( R.layout.activity_main ); testGetGoodsDetail(); } private void testGetGoodsDetail() { Retrofit retrofit = new Retrofit.Builder() .baseUrl( Constants.BASE_URL1 )//设置访问网络地址 .addConverterFactory( GsonConverterFactory.create() )//设置解析方式为Gson .addCallAdapterFactory( RxJavaCallAdapterFactory.create() ) .build(); GoodsService services = retrofit.create( GoodsService.class ); Observable<Entity> observable = services.getkey( "488c65f3230c0280757b50686d1f1cd5", "asc", "1418816972" ) ; observable.subscribeOn( Schedulers.io() ) .observeOn( AndroidSchedulers.mainThread() ) .subscribe( new Observer<Entity>() { @Override public void onCompleted() { } @Override public void onError(Throwable e) { } @Override public void onNext(Entity entity) { Log.i( "sss", "" + entity.getReason() + "****" + entity.getError_code() + "****" + entity.getResult().getData().toString() ); } } ); } }
package com.example.test4_7zfz.http.server; import com.example.test4_7zfz.utils.Entity; import java.util.Map; import retrofit2.Call; import retrofit2.http.Field; import retrofit2.http.FieldMap; import retrofit2.http.FormUrlEncoded; import retrofit2.http.GET; import retrofit2.http.POST; import retrofit2.http.Query; import retrofit2.http.QueryMap; import rx.Observable; public interface GoodsService { String getUrl = "joke/content/list.php"; String postUrl = "joke/content/list.php"; //仅此一个位rxjava封装 @GET(getUrl) Observable<Entity> getkey( /** * 传递参数的Get请求 */ @Query("key") String key, @Query("sort") String sort, @Query("time") String time ); /** * 封装好Url的Get的请求 * * @return */ @GET(getUrl+"?key=488c65f3230c0280757b50686d1f1cd5&&sort=asc&&time=1418816972") Call<Entity> get(); /** * 传递Map键值对的Get请求 **/ @GET(getUrl) Call<Entity> getmap(@QueryMap Map<String, String> params); /**传递参数的Post请求 */ @FormUrlEncoded @POST(postUrl) Call<Entity> postkey(@Field("key") String key, @Field("sort") String sort, @Field("time") String time); /** ** 传递Map键值对的Post请求 */ @FormUrlEncoded @POST(postUrl) Call<Entity> postmap(@FieldMap Map<String, String> map);// }
package com.example.test4_7zfz.utils; import java.io.Serializable; import java.util.List; public class Entity implements Serializable { @Override public String toString() { return "Entity{" + "reason='" + reason + ''' + ", result=" + result + ", error_code=" + error_code + '}'; } /** * reason : Success * result : {"data":[{"content":"昨天下班坐公交车回家,白天上班坐着坐多了想站一会儿,rn就把座位让给了一个阿姨,阿姨道谢一番开始和我聊天,聊了挺多的。rn后来我要下车了,阿姨热情的和我道别。rn下车的一瞬间我回头看了一眼,只见那阿姨对着手机说:u201c儿子,rn刚才遇见一个姑娘特不错,可惜长得不好看,不然我肯定帮你要号码!u201drn靠,阿姨你下车,我保证不打死你!","hashId":"348e7f933774bcaef3ed3f0ecb8e7b19","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"小时候妈妈喂我饭之前会看书,我问她看的什么时。rn妈妈总是笑着告诉我:u201c是《育儿经验宝典》啊!u201drn我很感动,直到我认识字才发现,妈妈看的是《猪崽饲养手册》。","hashId":"126a79697167f330f3f2339281ccb8b2","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"刚刚在舞蹈学校外接儿子,听到两个已经接到孩子到妈妈在聊天。rn妈妈甲:u201c你闺女这么小就是个美人胚子,大眼睛,双眼皮,瓜子脸。u201drn妈妈乙:u201c是啊,长大了不知道要祸害多少男孩!u201d","hashId":"a38339d867e4de601b0d77e3b94de0ab","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"u201c科学研究发现,睡眠不足会带来许多身心伤害:免疫力下降、rn记忆力减弱、易衰老、失去平衡等等,从而引发多种疾病。rn从科学角度讲,睡懒觉有助于身心健康。u201drnu201c所以,李老师,这就是你在课堂上睡觉的原因?u201d校长生气的问我。","hashId":"7fda08b4f42baf3868d6963aa5f2e9aa","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"做饭的时候发现没食用油了,rn就叫五岁的儿子u201c娃儿,去楼下小商店买壶油,顺便买点姜回来。别搞忘了。u201drn儿子答应,边出门边念叨u201c油,姜,油,姜,油,姜,油u2026u2026u2026u2026u201drn果然,回来带了瓶酱油u2026u2026","hashId":"650fd02f47de7bc4795248295a6bbde2","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"我妈研究了几个新菜,邀请我品尝,rn结果我没有给她一个yes,被臭骂了一顿,rn要和我断绝关系。找我爸评理,rn老头说为了公平起见,我还是尝尝菜吧。rn吃完后,老头幽幽的说道,你和我也断绝关系吧。","hashId":"70fa72fdf6038d5a7fb1e00a4db008ae","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"有一天晚上我俩一起吃西瓜,老大把西瓜籽很整洁的吐在了一张纸上,rn过了几天,我从教室回但宿舍看到老大在磕瓜子,rn我就问他:老大,你什么时候买的瓜子?rn老大说:刚晒好,说着抓了一把要递给我u2026u2026","hashId":"c8aa0e4e178fc61fe51d4279cf1df1b3","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":""我女朋友气跑了"rn"怎么回事?严重吗?你怎么着她了?"rn"不严重,我只是很久没用了"","hashId":"b5deeae99246331671dce4d5f16c7573","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"还说神马来一场说走就走的旅行,rn工作后就连一场说走就走的下班都不行","hashId":"ab6bcb72f06adf3c485a19fed3e9addb","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"高速路上堵车,路边葡萄地里有一哥们竟然在偷葡萄,心想太没素质了吧!rn不管了我也去,刚溜进葡萄地,那哥们竟问我干嘛,rn我撇了一眼反问道你干嘛呢?rn那哥们答道摘葡萄呢!rn我答道:我也摘葡萄呢!rn哥们郁闷了说我摘我家的你呢?rn我顿时脸红,哥你家葡萄咋卖呢?","hashId":"82e537f58a90383a3e85a973c3fae2f3","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"和老婆在街边散步,我手上捏着一张已揉成一团的传单,rn走了好一会终于看到个垃圾桶,我赶紧跑过去想扔掉,rn没想到老婆从后边一把拉住我说:老公,那个肯定吃不得了,别捡。rn我一愣,发现垃圾桶顶盖上放着半个西瓜。","hashId":"a434476473e613e43949b9fb2e67496a","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"某考生考了个倒数第一,回到家被他爸一顿暴揍,rn来到学校老师让他谈谈落后的体会,rn学生:u201c我终于明白了u201c落后就要挨打u201d的道理。u201d","hashId":"122681bf7fd7a523d1407e802aaa5790","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"很多人不喜欢朝九晚五的生活,然后开始创业。rn最终,他的生活变成了朝五晚九。","hashId":"276e0d8ebdf8b42789f58c514b7a8b51","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"钱这个东西,真是害人精。rn小到人与人之间的矛盾,大到国家之间的战争,无不是为了钱。rn钱可以把人推上万众瞩目之颠,也可以使人瞬间变成阶下囚。rn可是,富人们却没认识到,当钱几辈子花不完时,rn挣再多已经没有意义,还不如早日尽点社会责任,rn捐助给需要的人,求得个平安幸福。rn看到这个的有钱人们呐,你们什么时侯能捐我点啊!","hashId":"62cd058131ae047cd76f66f2fdfb7b80","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"看到一句很好的名言:我们无法拉伸生命的长度,但是我们可以拓展生命的宽度。rn我觉得这句话太有道理了!rn意思就是:虽然我们无法再长高了,但是我们还可以继续长胖。","hashId":"d546a6a3faf6cf5c367aac1205f84407","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"女生口中所说的u201c理工男好萌好棒好想嫁!u201d,rn其实理工男是指u201c会修电脑、会设置手机、会安家用电器、rn会帮做PPT打EXCEL表PS修图、话少、高冷、专一、不和乱七八糟的女生来往、rn不爱打扮却又干净清爽、高高瘦瘦、手指纤长、戴黑框眼镜超好看的帅哥u201d。rn其实找个帅哥让他学电脑,再戴个眼镜就OK了。","hashId":"e3d330e6f7e31df7d99455dbef4e772b","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"u201c老婆,我想出去玩,u201du201c你去哪玩?u201drnu201c我想去凉快的地方还能玩水的地方,u201drnu201c没问题,你把空调打开,把卫生间堆的衣服洗了。","hashId":"277ef2566db36a40adf37af3ba164d5d","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"我在网上斗地主,女友在旁边看,问:u201c斗地主不是三个人玩的吗?u201drn我说是啊!女友又问:u201c那怎么上面有四个人的名字,u201drn我说一个在旁边看的。女友:u201c那我在你旁边看,怎么没有我的名字?u201d","hashId":"154ebe2eb9d79d3c30813639ebce9bc9","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"今天去超市,一熊孩纸问我要钱,我一看就知道是坑人的,rn就不给。熊孩纸:u201c好,那你等着。u201drn我心想大白天你一小逼孩能怎样?去叫人?rn我就盯着他看,熊孩纸快走几步到一穿裙子的妹纸那,rn二话不说撩起来回头对我喊:u201c二叔,粉红色的u201d!","hashId":"1325a29c04ee71154d489b6a97ba7d4f","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"},{"content":"女儿:u201c妈,我给你买个吸尘器吧,就不用你弯腰扫地了。u201drn老妈:u201c不要,浪费钱。u201d女儿:u201c我给你买个洗碗机啊,rn能省不少事呢。u201d老妈:u201c不要,浪费钱。u201drn女儿:u201c那你想要什么啊?u201drn老妈:u201c什么都不要,这些活你爸都能干。u201d","hashId":"2b35f672f37ca2cd65aa079d306f7e50","unixtime":1418819032,"updatetime":"2014-12-17 20:23:52"}]} * error_code : 0 */ private String reason; private ResultBean result; private int error_code; public String getReason() { return reason; } public void setReason(String reason) { this.reason = reason; } public ResultBean getResult() { return result; } public void setResult(ResultBean result) { this.result = result; } public int getError_code() { return error_code; } public void setError_code(int error_code) { this.error_code = error_code; } public static class ResultBean { private List<DataBean> data; public List<DataBean> getData() { return data; } public void setData(List<DataBean> data) { this.data = data; } public static class DataBean { @Override public String toString() { return "DataBean{" + "content='" + content + ''' + ", hashId='" + hashId + ''' + ", unixtime=" + unixtime + ", updatetime='" + updatetime + ''' + '}'; } /** * content : 昨天下班坐公交车回家,白天上班坐着坐多了想站一会儿, 就把座位让给了一个阿姨,阿姨道谢一番开始和我聊天,聊了挺多的。 后来我要下车了,阿姨热情的和我道别。 下车的一瞬间我回头看了一眼,只见那阿姨对着手机说:“儿子, 刚才遇见一个姑娘特不错,可惜长得不好看,不然我肯定帮你要号码!” 靠,阿姨你下车,我保证不打死你! * hashId : 348e7f933774bcaef3ed3f0ecb8e7b19 * unixtime : 1418819032 * updatetime : 2014-12-17 20:23:52 */ private String content; private String hashId; private int unixtime; private String updatetime; public String getContent() { return content; } public void setContent(String content) { this.content = content; } public String getHashId() { return hashId; } public void setHashId(String hashId) { this.hashId = hashId; } public int getUnixtime() { return unixtime; } public void setUnixtime(int unixtime) { this.unixtime = unixtime; } public String getUpdatetime() { return updatetime; } public void setUpdatetime(String updatetime) { this.updatetime = updatetime; } } } }
package com.example.test4_7zfz.utils; /** * 常量数据类一般会放一些项目中公共的经常使用的数据。比如网络接口调用时的公共url; */ public class Constants { //https://v.juhe.cn/joke/content/list.php?key=488c65f3230c0280757b50686d1f1cd5&&sort=asc&&time=1418816972 public static String BASE_URL1="https://v.juhe.cn/"; }
最后,感谢阅读,卖个萌o(∩_∩)o 哈哈!`
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算