您的位置:首页 > 编程语言 > Java开发

Thrift基本数据类型

2015-12-10 11:50 507 查看
要编写Thrift定义文件,肯定要熟悉Thrift常见的数据类型:

1.基本类型(括号内为对应的Java类型):

bool(boolean): 布尔类型(TRUE or FALSE)

byte(byte): 8位带符号整数

i16(short): 16位带符号整数

i32(int): 32位带符号整数

i64(long): 64位带符号整数

double(double): 64位浮点数

string(String): 采用UTF-8编码的字符串

2.特殊类型(括号内为对应的Java类型):

binary(ByteBuffer):未经过编码的字节流

3.Structs(结构):

struct定义了一个很普通的OOP对象,但是没有继承特性。
struct UserProfile {

1: i32 uid,

2: string name,

3: string blurb

}


如果变量有默认值,可以直接写在定义文件里:
struct UserProfile {

1: i32 uid = 1,

2: string name = "User1",

3: string blurb

}


4.容器,除了上面提到的基本数据类型,Thrift还支持以下容器类型:

list(java.util.ArrayList):

set(java.util.HashSet):

map(java.util.HashMap):

用法如下:
struct Node {

1: i32 id,

2: string name,

3: list<i32> subNodeList,

4: map<i32,string> subNodeMap,

5: set<i32> subNodeSet

}


包含定义的其他Object:
struct SubNode {

1: i32 uid,

2: string name,

3: i32 pid

}



struct
Node {

1: i32 uid,

2: string name,

3: list<subNode> subNodes

}


5.Services服务,也就是对外展现的接口:
service UserStorage {

void store(1: UserProfile user),

UserProfile retrieve(1: i32 uid)

}




上一篇String
常用方法总结


0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  thrift java