当前位置: 首页 > news >正文

自己做报名网站教程中国十大发布信息网站排名

自己做报名网站教程,中国十大发布信息网站排名,哈尔滨网站设计定制,企业网站建设文案案例一、概述 Retrofit是Square公司开发的一个类型安全的Java和Android 的REST客户端库。来自官网的介绍#xff1a; A type-safe HTTP client for Android and JavaRest API是一种软件设计风格#xff0c;服务器作为资源存放地。客户端去请求GET,PUT, POST,DELETE资源。并且是无… 一、概述 Retrofit是Square公司开发的一个类型安全的Java和Android 的REST客户端库。来自官网的介绍 A type-safe HTTP client for Android and Java Rest API是一种软件设计风格服务器作为资源存放地。客户端去请求GET,PUT, POST,DELETE资源。并且是无状态的没有session的参与。关于REST的介绍可以参考维基百科 retrofit模型如下(来自如何使用Retrofit写一个Android的REST客户端的小教程) 1) POJO或模型实体类 : 从服务器获取的JSON数据将被填充到这种类的实例中。2) 接口 : 我们需要创建一个接口来管理像GET,POST...等请求的URL这是一个服务类。3) RestAdapter类 : 这是一个REST客户端(RestClient)类retrofit中默认用的是Gson来解析JSON数据你也可以设置自己的JSON解析器。 二、原理 在发起请求时整个框架主要通过Call来封装每一次的请求。调用同步方法时会使用应用线程来发送请求调用异步方法时会通过 OkHttp 的 Dispatcher 提供的线程来执行请求。 DispatcherDispatcher内部实现了懒加载无边界限制的线程池方式同时该线程池采用了SynchronousQueue这种阻塞队列。SynchronousQueue每个插入操作必须等待另一个线程的移除操作同样任何一个移除操作都等待另一个线程的插入操作。显然这是一种快速传递元素的方式也就是说在这种情况下元素总是以最快的方式从插入者生产者传递给移除者消费者这在多任务队列中是最快处理任务的方式。 二、使用 添加依赖gradle或导jar包 添加依赖在modul的build文件下的dependencies中添加 compile com.squareup.retrofit2:retrofit:2.0.2 compile com.squareup.retrofit2:converter-gson:2.0.2 点击Sync Now或导jar包点击下载retrofit-2.0.0-beta2.jar|                Retrofit库converter-gson-2.0.0-beta2_.jar |    Gson解析库gson-2.4.jar             |                        Gson解析库okhttp-2.5.0.jar              |                   Okhttp请求库okio-1.6.0.jar             |                       Okhttp请求库说明Retrofit依赖于okhttp所以需要集成okhttpAPI返回的数据为JSON格式在此我使用的是Gson对返回数据解析 添加权限 由于是网络请求需要在manifest中添加网络请求的权限 uses-permission android:nameandroid.permission.INTERNET/ 创建实体类 这是使用Gson解析需要创建一个POJOJava对象。服务器返回的JSON数据不能在Java里直接使用所以我们需要用模型类来做转换。这里使用jsonschema2pojo需翻墙来创建POJO。得到JSON数据如下复制JSON字符串到输入框中填写报名、类名源代码类型选择JSON注解类型选择Gson点击Preview即可得到对应的POJO如下图点击preview得到对应的实体类。将其拷贝到自己的工程中即可。 import com.google.gson.annotations.SerializedName;Generated(org.jsonschema2pojo)可删除 POJO的转换推荐使用GsonFormat用法不就不说了自己去搜吧。简单易用 创建一个Retrofit 对象核心用法一 Retrofit retrofit new Retrofit.Builder().addConverterFactory(GsonConverterFactory.create())//解析方法//这里建议- Base URL: 总是以/结尾- Url: 不要以/开头.baseUrl(http://www.wangyinews.com.cn/).build(); 接口申明核心用法二 public interface NewsService {/*** 根据newsid获取对应的资讯数据* 如果不需要转换成Json数据,可以用了ResponseBody;* param newsId* return call*/GET(News/{newsId})CallNews getNews(Path(newsId) String newsId); } 若需要重新定义接口地址可以使用Url例 GETCallListCaigenActivitySubjectsBean getActivitySubjectsList(Url String url,QueryMap MapString, String map); 更多请求方法请参考Retrofit网络请求ServicePath、Query、QueryMap 创建访问API的请求核心用法三NewsService api retrofit.create(NewsService .class); CallNews call service.getNews(123456); 同步调用(核心用法四) News news call.execute(); 异步调用核心用法五 call.enqueue(new CallbackNews(){  Override  public void onResponse(ResponseNews response) {  //成功返回数据后在这里处理使用response.body();获取得到的结果News news response.body();}  Override  public voidonFailure(Throwable t) {  //请求失败在这里处理  }  });   取消请求核心用法六 call.cancel();   完成以上步骤就可以实现一个简单的网络请求了。 Tips:当返回结果错误调用response.errorBody().string();可以得到String类型的请求结果但再次调用response.errorBody().string();得到的结果为。具体原因不明
http://wiki.neutronadmin.com/news/295503/

相关文章:

  • 站酷网页版专业餐饮vi设计公司
  • 专业网站优化制作公司网站正能量晚上免费网址不用下载
  • 外贸上哪个网站开发客户wordpress调用百度地图吗
  • 教学网站模板一个专门做酒店招聘的网站
  • 刷神马网站优化排名电子商务网址大全
  • 专业企业建站系统商丘电子商务网站建设
  • 做网站的你选题的缘由是什么长春网络公司
  • 网站制作公司哪家好一点老域名对做网站的
  • 城乡和住房建设部网站施工企业质量管理制度
  • 个人做的小网站需要备案外贸论坛福步
  • wordpress开发中介网站商品房建设信息网站
  • 中型网站开发语言云南模板网站建设公司
  • 网站建设最便宜在线小游戏
  • 做淘宝要用到哪些网站昆明网站制作策划
  • 昌平网站制作app开发费用标准
  • 网站建设 保定施工企业信用评价
  • 南昌门户网站建设h5 网站模板
  • 佛山营销型网站设计国外服务器网站打开慢
  • 做一个网站的价钱百度热门
  • 淮安建设企业网站国外h5网站模板下载
  • 网站建设方案书是啥比较好的网站建设品牌升级
  • 晟合建设集团网站aspnet网站开发书
  • 天津市建设交易中心网站婚纱设计网站首页
  • 新北区城乡建设局网站wordpress 头像打岔
  • 旅行社网站建设规划方案seo博客网站
  • 做app网站的软件有哪些内容医院网站建设运营方案
  • 建设局域网网站部队内网网站建设方案
  • wordpress 只有英文百度seo流量
  • 绍兴网站建设专业的公司个人网页制作总结
  • 电子商务网站规划与网页制作wap版