摘要:\u003C\u002Fp\u003E\u003Cp\u003E环境搭建\u003C\u002Fp\u003E\u003Cp\u003E1.创建springboot项目\u003C\u002Fp\u003E\u003Cdiv class=\"pgc-img\"\u003E\u003Cimg src=\"http:\u002F\u002Fp3.pstatp.com\u002Flarge\u002Fpgc-image\u002Faf901c02533e48f4ab50e6fd1dc9c8d2\" img_width=\"633\" img_height=\"365\" alt=\"RPC之HttpClient与OkHttp3的实现,服务端知识点\" inline=\"0\"\u003E\u003Cp class=\"pgc-img-caption\"\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E2. pom.xml导入对应的依jar包\u003C\u002Fp\u003E\u003Cpre\u003E\u003Cbr\u003E org.springframework.boot\u003Cbr\u003E spring-boot-starter-parent\u003Cbr\u003E 2.0.1.RELEASE\u003Cbr\u003E\u003Cbr\u003E\u003Cbr\u003E \u003Cbr\u003E org.springframework.boot\u003Cbr\u003E spring-boot-starter-web\u003Cbr\u003E \u003Cbr\u003E \u003Cbr\u003E org.springframework.boot\u003Cbr\u003E spring-boot-devtools\u003Cbr\u003E \u003Cbr\u003E"\u003Cdiv\u003E\u003Cp\u003E概念:\u003C\u002Fp\u003E\u003Cblockquote\u003E\u003Cp\u003E在进行HttpClient和OkHttp的学习之前,我们得先了解下RPC这个概念。所谓的RPC,英文全称为Remote ProcedureCall,翻译成中文的意思是远程过程调用,它是一种通过网络从远程计算机程序上请求服务获取数据的一种协议。说的更直白点就是要实现不同服务器之间的服务调用。而随着分布式系统的普及,RPC在现在的系统开发中起着非常重用的作用。\u003C\u002Fp\u003E\u003Cp\u003E此次我们将要学习的HttpClient和OkHttp都可以实现RPC远程服务调用。HttpClient是Apache Jakarta Common 下的子项目。它是一种基于HTTP协议的客户端编程工具包,而OkHttp是一种适用于Android和Java应用程序的HTTP客户端。从概念上来看,两者都是基于HTTP协议的客户端程序,也都能实现远程服务请求的调用,所以接下来,我们通过案例对HttpClient与OkHttp3做一个详细的学习。\u003C\u002Fp\u003E\u003C\u002Fblockquote\u003E\u003Cp\u003E服务端\u003C\u002Fp\u003E\u003Cp\u003E需求分析\u003C\u002Fp\u003E\u003Cp\u003E在正式学习HttpClient和OkHttp之前,我们需要先搭建服务器对外提供服务,业务非常简单:\u003C\u002Fp\u003E\u003Col\u003E\u003Cli\u003E实现用户列表的查询实现根据用户ID查询用户详情信息实现用户的新增\u003C\u002Fli\u003E\u003C\u002Fol\u003E\u003Cp\u003E为了方便环境的构建吗,此次我采用SprongBoot对项目进行构建,当然你也可以选中你自己比较熟悉的技术来搭建环境,完成上述需求的开发工作。接下来我们就把整个环境搭建的步骤来实现下。\u003C\u002Fp\u003E\u003Cp\u003E环境搭建\u003C\u002Fp\u003E\u003Cp\u003E1.创建springboot项目\u003C\u002Fp\u003E\u003Cdiv class=\"pgc-img\"\u003E\u003Cimg src=\"http:\u002F\u002Fp3.pstatp.com\u002Flarge\u002Fpgc-image\u002Faf901c02533e48f4ab50e6fd1dc9c8d2\" img_width=\"633\" img_height=\"365\" alt=\"RPC之HttpClient与OkHttp3的实现,服务端知识点\" inline=\"0\"\u003E\u003Cp class=\"pgc-img-caption\"\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E2. pom.xml导入对应的依jar包\u003C\u002Fp\u003E\u003Cpre\u003E<parent>\u003Cbr\u003E <groupId>org.springframework.boot<\u002FgroupId>\u003Cbr\u003E <artifactId>spring-boot-starter-parent<\u002FartifactId>\u003Cbr\u003E <version>2.0.1.RELEASE<\u002Fversion>\u003Cbr\u003E<\u002Fparent>\u003Cbr\u003E<dependencies>\u003Cbr\u003E <dependency>\u003Cbr\u003E <groupId>org.springframework.boot<\u002FgroupId>\u003Cbr\u003E <artifactId>spring-boot-starter-web<\u002FartifactId>\u003Cbr\u003E <\u002Fdependency>\u003Cbr\u003E <dependency>\u003Cbr\u003E <groupId>org.springframework.boot<\u002FgroupId>\u003Cbr\u003E <artifactId>spring-boot-devtools<\u002FartifactId>\u003Cbr\u003E <\u002Fdependency>\u003Cbr\u003E<\u002Fdependencie\u003Cbr\u003E\u003C\u002Fpre\u003E\u003Cp\u003E3.编写引导类\u003C\u002Fp\u003E\u003Cpre\u003EBootApplication\u003Cbr\u003Epublic class ServerApplication {\u003Cbr\u003E public static void main(String[] args) {\u003Cbr\u003E SpringApplication.run(ServerApplication.class,args);\u003Cbr\u003E }\u003Cbr\u003E}\u003Cbr\u003E\u003C\u002Fpre\u003E\u003Cp\u003E4.编写模型类\u003C\u002Fp\u003E\u003Cpre\u003Epublic class User {\u003Cbr\u003E private Integer id;\u003Cbr\u003E private String name;\u003Cbr\u003E private String password;\u003Cbr\u003E \u002F\u002F构造函数和setter、getter方法\u003Cbr\u003E}\u003Cbr\u003E\u003C\u002Fpre\u003E\u003Cp\u003E5.编写Controller类\u003C\u002Fp\u003E\u003Cdiv class=\"pgc-img\"\u003E\u003Cimg src=\"http:\u002F\u002Fp1.pstatp.com\u002Flarge\u002Fpgc-image\u002F55d937237d0d4c0592cf40c4a59f3b1f\" img_width=\"695\" img_height=\"311\" alt=\"RPC之HttpClient与OkHttp3的实现,服务端知识点\" inline=\"0\"\u003E\u003Cp class=\"pgc-img-caption\"\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cdiv class=\"pgc-img\"\u003E\u003Cimg src=\"http:\u002F\u002Fp1.pstatp.com\u002Flarge\u002Fpgc-image\u002F601d35747ab14e2ab09380a4103308f0\" img_width=\"682\" img_height=\"650\" alt=\"RPC之HttpClient与OkHttp3的实现,服务端知识点\" inline=\"0\"\u003E\u003Cp class=\"pgc-img-caption\"\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E7.编写service接口类\u003C\u002Fp\u003E\u003Cdiv class=\"pgc-img\"\u003E\u003Cimg src=\"http:\u002F\u002Fp9.pstatp.com\u002Flarge\u002Fpgc-image\u002F774f773e792b4ac0948d8962e13ddc30\" img_width=\"672\" img_height=\"289\" alt=\"RPC之HttpClient与OkHttp3的实现,服务端知识点\" inline=\"0\"\u003E\u003Cp class=\"pgc-img-caption\"\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cdiv class=\"pgc-img\"\u003E\u003Cimg src=\"http:\u002F\u002Fp1.pstatp.com\u002Flarge\u002Fpgc-image\u002Fb310297192594a80b2ec6ed1db5a24d9\" img_width=\"693\" img_height=\"84\" alt=\"RPC之HttpClient与OkHttp3的实现,服务端知识点\" inline=\"0\"\u003E\u003Cp class=\"pgc-img-caption\"\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E8.编写service实现类\u003C\u002Fp\u003E\u003Cdiv class=\"pgc-img\"\u003E\u003Cimg src=\"http:\u002F\u002Fp3.pstatp.com\u002Flarge\u002Fpgc-image\u002Fe1dded7665244f1492f55a91160e16e8\" img_width=\"685\" img_height=\"589\" alt=\"RPC之HttpClient与OkHttp3的实现,服务端知识点\" inline=\"0\"\u003E\u003Cp class=\"pgc-img-caption\"\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E功能测试\u003C\u002Fp\u003E\u003Cp\u003E可以借助于浏览器或者postMan等工具进行测试,此处不是我们研究的重点,所以该处需要自行测试用过即可,经过测试我们可以获取一些URL地址。\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E"'.slice(6, -6), groupId: '6720024874040951304
相关文章