标签:
IDL:接口描述语言
这里使用thrift-0.8.0-xsb这个版本来介绍IDL的定义以及简单实例分析。
1. namespace 定义包名
2.struct 结构体,定义服务接口的参数和返回值用到的类结构。基本类型不需要使用struct.
3.service 定义接口:demo.thrift
1 namespace java com.thrift.demo 2 3 struct Parameter { 4 1: required i32 id; 5 2: required string name; 6 } 7 8 service DemoService { 9 i32 demoMethod(1:string param1, 2:Parameter param2, 3:map<string,string> param3); 10 }
命令行执行 thrift -r --gen java demo.thrift,生成gen-java文件夹,在eclipse下创建名为gen-java的工程,然后将生成的gen-java放入eclipse的工作空间,即可关联成为一个gen-java工程(也可以自定义一个java工程,然后将生成的代码导入,此时只有JRE-System Library,java文件均报错。手动创建一个新的文件夹将Thrift工程需要的jar包以及libthrift-0.8.0.jar放置到文件夹下,同时在Java Build Path中添加引用。我这里直接使用eclipse自动fixed setup 导入,然后就出现了Refferenced Libraries文件夹,文件夹中包含了libthrift-0.8.0.jar等需要的jar包。如下图所示:
可见:每个struct会单独生成一个类,每个service也会生成一个类。
标签:
原文地址:http://www.cnblogs.com/leehfly/p/4936270.html