1. 首页
  2. IT资讯

RPC之HttpClient与OkHttp3的实现,服务端知识点

“u003Cdivu003Eu003Cpu003E概念:u003Cu002Fpu003Eu003Cblockquoteu003Eu003Cpu003E在进行HttpClient和OkHttp的学习之前,我们得先了解下RPC这个概念。所谓的RPC,英文全称为Remote ProcedureCall,翻译成中文的意思是远程过程调用,它是一种通过网络从远程计算机程序上请求服务获取数据的一种协议。说的更直白点就是要实现不同服务器之间的服务调用。而随着分布式系统的普及,RPC在现在的系统开发中起着非常重用的作用。u003Cu002Fpu003Eu003Cpu003E此次我们将要学习的HttpClient和OkHttp都可以实现RPC远程服务调用。HttpClient是Apache Jakarta Common 下的子项目。它是一种基于HTTP协议的客户端编程工具包,而OkHttp是一种适用于Android和Java应用程序的HTTP客户端。从概念上来看,两者都是基于HTTP协议的客户端程序,也都能实现远程服务请求的调用,所以接下来,我们通过案例对HttpClient与OkHttp3做一个详细的学习。u003Cu002Fpu003Eu003Cu002Fblockquoteu003Eu003Cpu003E服务端u003Cu002Fpu003Eu003Cpu003E需求分析u003Cu002Fpu003Eu003Cpu003E在正式学习HttpClient和OkHttp之前,我们需要先搭建服务器对外提供服务,业务非常简单:u003Cu002Fpu003Eu003Colu003Eu003Cliu003E实现用户列表的查询实现根据用户ID查询用户详情信息实现用户的新增u003Cu002Fliu003Eu003Cu002Folu003Eu003Cpu003E为了方便环境的构建吗,此次我采用SprongBoot对项目进行构建,当然你也可以选中你自己比较熟悉的技术来搭建环境,完成上述需求的开发工作。接下来我们就把整个环境搭建的步骤来实现下。u003Cu002Fpu003Eu003Cpu003E环境搭建u003Cu002Fpu003Eu003Cpu003E1.创建springboot项目u003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp3.pstatp.comu002Flargeu002Fpgc-imageu002Faf901c02533e48f4ab50e6fd1dc9c8d2″ img_width=”633″ img_height=”365″ alt=”RPC之HttpClient与OkHttp3的实现,服务端知识点” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003E2. pom.xml导入对应的依jar包u003Cu002Fpu003Eu003Cpreu003E<parent>u003Cbru003E <groupId>org.springframework.boot<u002FgroupId>u003Cbru003E <artifactId>spring-boot-starter-parent<u002FartifactId>u003Cbru003E <version>2.0.1.RELEASE<u002Fversion>u003Cbru003E<u002Fparent>u003Cbru003E<dependencies>u003Cbru003E <dependency>u003Cbru003E <groupId>org.springframework.boot<u002FgroupId>u003Cbru003E <artifactId>spring-boot-starter-web<u002FartifactId>u003Cbru003E <u002Fdependency>u003Cbru003E <dependency>u003Cbru003E <groupId>org.springframework.boot<u002FgroupId>u003Cbru003E <artifactId>spring-boot-devtools<u002FartifactId>u003Cbru003E <u002Fdependency>u003Cbru003E<u002Fdependencieu003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E3.编写引导类u003Cu002Fpu003Eu003Cpreu003EBootApplicationu003Cbru003Epublic class ServerApplication {u003Cbru003E public static void main(String[] args) {u003Cbru003E SpringApplication.run(ServerApplication.class,args);u003Cbru003E }u003Cbru003E}u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E4.编写模型类u003Cu002Fpu003Eu003Cpreu003Epublic class User {u003Cbru003E private Integer id;u003Cbru003E private String name;u003Cbru003E private String password;u003Cbru003E u002Fu002F构造函数和setter、getter方法u003Cbru003E}u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E5.编写Controller类u003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002Fpgc-imageu002F55d937237d0d4c0592cf40c4a59f3b1f” img_width=”695″ img_height=”311″ alt=”RPC之HttpClient与OkHttp3的实现,服务端知识点” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002Fpgc-imageu002F601d35747ab14e2ab09380a4103308f0″ img_width=”682″ img_height=”650″ alt=”RPC之HttpClient与OkHttp3的实现,服务端知识点” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003E7.编写service接口类u003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp9.pstatp.comu002Flargeu002Fpgc-imageu002F774f773e792b4ac0948d8962e13ddc30″ img_width=”672″ img_height=”289″ alt=”RPC之HttpClient与OkHttp3的实现,服务端知识点” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002Fpgc-imageu002Fb310297192594a80b2ec6ed1db5a24d9″ img_width=”693″ img_height=”84″ alt=”RPC之HttpClient与OkHttp3的实现,服务端知识点” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003E8.编写service实现类u003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp3.pstatp.comu002Flargeu002Fpgc-imageu002Fe1dded7665244f1492f55a91160e16e8″ img_width=”685″ img_height=”589″ alt=”RPC之HttpClient与OkHttp3的实现,服务端知识点” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003E功能测试u003Cu002Fpu003Eu003Cpu003E可以借助于浏览器或者postMan等工具进行测试,此处不是我们研究的重点,所以该处需要自行测试用过即可,经过测试我们可以获取一些URL地址。u003Cu002Fpu003Eu003Cu002Fdivu003E”

原文始发于:RPC之HttpClient与OkHttp3的实现,服务端知识点

主题测试文章,只做测试使用。发布者:程序员,转转请注明出处:http://www.cxybcw.com/26732.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code