网站首页 > java教程 正文
概念:
在进行HttpClient和OkHttp的学习之前,我们得先了解下RPC这个概念。所谓的RPC,英文全称为Remote ProcedureCall,翻译成中文的意思是远程过程调用,它是一种通过网络从远程计算机程序上请求服务获取数据的一种协议。说的更直白点就是要实现不同服务器之间的服务调用。而随着分布式系统的普及,RPC在现在的系统开发中起着非常重用的作用。
此次我们将要学习的HttpClient和OkHttp都可以实现RPC远程服务调用。HttpClient是Apache Jakarta Common 下的子项目。它是一种基于HTTP协议的客户端编程工具包,而OkHttp是一种适用于Android和Java应用程序的HTTP客户端。从概念上来看,两者都是基于HTTP协议的客户端程序,也都能实现远程服务请求的调用,所以接下来,我们通过案例对HttpClient与OkHttp3做一个详细的学习。
服务端
需求分析
在正式学习HttpClient和OkHttp之前,我们需要先搭建服务器对外提供服务,业务非常简单:
- 实现用户列表的查询实现根据用户ID查询用户详情信息实现用户的新增
为了方便环境的构建吗,此次我采用SprongBoot对项目进行构建,当然你也可以选中你自己比较熟悉的技术来搭建环境,完成上述需求的开发工作。接下来我们就把整个环境搭建的步骤来实现下。
环境搭建
1.创建springboot项目
2. pom.xml导入对应的依jar包
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.1.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency> </dependencie
3.编写引导类
BootApplication public class ServerApplication { public static void main(String[] args) { SpringApplication.run(ServerApplication.class,args); } }
4.编写模型类
public class User { private Integer id; private String name; private String password; //构造函数和setter、getter方法 }
5.编写Controller类
7.编写service接口类
8.编写service实现类
功能测试
可以借助于浏览器或者postMan等工具进行测试,此处不是我们研究的重点,所以该处需要自行测试用过即可,经过测试我们可以获取一些URL地址。
猜你喜欢
- 2024-10-16 第三方接口调用方案设计(第三方接口调用方式)
- 2024-10-16 java连接数据库的常见问题及解决办法
- 2024-10-16 Java Servlet实现Hessian接口调用
- 2024-10-16 Java调用外部程序的疑惑?(java调用外部类)
- 2024-10-16 Spring6.1新特性,四种方式调用REST接口(RestClient...)
- 2024-10-16 netty系列之:使用netty搭建websocket客户端
- 2024-10-16 Java 中的 Http 客户端 API:身份验证
- 2024-10-16 axis2客户端调用免费的webservice服务的实例
- 2024-10-16 程序员2022年你不懂RPC远程过程调用,RPC框架的话真的要被淘汰了
- 2024-10-16 K8S官方java客户端之五:proto基本操作
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)