thrift-geerator是通过Java的接口生成thrift文件的工具。
例子:
public iterface ICommoUserService { public User logi(it id, Strig ame); public User getUserById(log id); public boolea saveUser(User user); public List getUserIds(log id); public Map getUserByIds(List ids); public Map> getUsersByName(List ames); public Map> getGroupUsers(List ames, List userList, List ls, log ll); public List testCase1(Map um1, List um2, List um3, log um4, Strig um5);}public class ThriftFileBuilderTest { private ThriftFileBuilder fileBuilder = ew ThriftFileBuilder(); @Test public void toOutputstream() throws Exceptio { this.fileBuilder.buildToOutputStream(ICommoUserService.class, System.out); }}执行代码:
mv test -Dtest=com.sohu.thrift.geerator.builder.ThriftFileBuilderTest之后控制台输出如下:
amespace java com.sohu.thrift.geerator.test.thrift eum Status { NORMAL = 0, BLOCKED = 1 } struct Accout { 1:i32 id, 2:strig ame } struct User { 1:i32 id, 2:strig ame, 3:bool sex, 4:Status status, 5:list ids, 6:Accout accout } service ICommoUserService { User logi(1:i32 arg0,2:strig arg1), map> getUsersByName(1:list arg0), bool saveUser(1:User arg0), map getUserByIds(1:list arg0), list getUserIds(1:i64 arg0), map> getGroupUsers(1:list arg0,2:list arg1,3:list arg2,4:i64 arg3), User getUserById(1:i64 arg0), list testCase1(1:map arg0,2:list arg1,3:list arg2,4:i64 arg3,5:strig arg4) }






评论