1.下载并配置Thrift附上链接:http://thrift.apache.org/download
Release
The latest stable release of Thrift is 0.14.1 (released on 2021-MAR-08).
Maven artifact
<dependency>
<groupId>org.apache.thrift</groupId>
<artifactId>libthrift</artifactId>
<version>0.14.1</version>
</dependency>
下载完成后结果如下:
1.将tar解压考到你的目标位置,例如我的D:\mycarrer\centre,然后把.exe放到thrift-0.14.1文件夹中
注:可以将thrift-0.14.1.exe重命名为thrift.exe,那么下面操作时用thrift.exe
2.环境变量:最好在系统环境变量和用户环境变量都设置
path中增加: D:\mycarrer\centre\thrift-0.14.1
thrift-0.14.1 -version 如果上面名字重命名成thrift.exe,此时用thrift -version
Thrift是RPC框架
什么是RPC 目的:远程调用
RPC(remote produce call),远程过程调用协议。它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。
1.编写thrift
例如HelloWord.thrift 可以直接用txt编写,也可以用idea等工具,后缀是.thrift,内容如下
namespace java service.server
service HelloWorld{
string sendString(1:string para),
string sendParams(1:string para,2:map<string,string> dataMap,3:list<map<string,string>> dataList)
}
2.生成接口代码
进入 D:\mycarrer\centre\thrift-0.14.1 打开cmd,先输入 D: 然后 cd D:\mycarrer\centre\thrift-0.14.1
thrift-0.14.1 -r -gen java HelloWord.thrift
执行后在目录
D:\mycarrer\centre\thrift-0.14.1\gen-java\service\server 生成HelloWorld.java
实例路径:studyDemo/case/thrift
服务端业务逻辑 就是你的接口实现类 目的就是实现接口定义的方法
public class HelloWorldImpl implements HelloWorld.Iface{
@Override
....
@Override
....
}
服务端运行实现 一般命名为Server.java 用来注册和启动服务端业务实现 简单模式 池化模式!
TServer server = new TSimpleServer(tArgs);
// 启动服务
server.serve();
客户端代码client 访问服务端的请求代码 简单模式 池化模式!
HelloWorld.Client client = new HelloWorld.Client(protocol);
transport.open();
// 调用接口方法
String result = client.sendString("Hello World!");