很早之前写的一个工具,面向的用户主要有两种
1.没接触thrift,但是希望使用thrift的用户,可以便于新用户的理解
2.之前用的是rmi,之后想转成thrift的用户
example
public interface ICommonUserService {
public User login(int id, String name);
public User getUserById(long id);
public boolean saveUser(User user);
public List<User> getUserIds(long id);
public Map<Long, User> getUserByIds(List<User> ids);
public Map<String, List<User>> getUsersByName(List<String> names);
public Map<Long, List<Long>> getGroupUsers(List<String> names, List<User> userList, List<Long> lns, long ll);
public List<String> testCase1(Map<Integer,String> num1, List<User> num2, List<String> num3, long num4, String num5);
}
public class ThriftStructBuilderTest {
private ThriftFileBuilder fileBuilder = new ThriftFileBuilder();
@Test
public void toOutputstream() throws Exception {
this.fileBuilder.buildToOutputStream(ICommonUserService.class, System.out);
}
}
执行之后会在控制台输入如下:
namespace java com.sohu.thrift.generator.test.thrift
enum Status {
NORMAL = 0,
BLOCKED = 1
}
struct Account {
1:i32 id,
2:string name
}
struct User {
1:i32 id,
2:string name,
3:bool sex,
4:Status status,
5:list<i64> ids,
6:Account account
}
service ICommonUserService {
User login(1:i32 arg0,2:string arg1),
map<string, list<User>> getUsersByName(1:list<string> arg0),
bool saveUser(1:User arg0),
map<i64, User> getUserByIds(1:list<User> arg0),
list<User> getUserIds(1:i64 arg0),
map<i64, list<i64>> getGroupUsers(1:list<string> arg0,2:list<User> arg1,3:list<i64> arg2,4:i64 arg3),
User getUserById(1:i64 arg0),
list<string> testCase1(1:map<i32, string> arg0,2:list<User> arg1,3:list<string> arg2,4:i64 arg3,5:string arg4)
}
相关推荐
thrift-0.9.1桌面生成代码工具, 免安装版本,可直接生成thrift代码的工具(0.9.1版本)
thrift-generator 是通过 Java 的接口生成 thrift 文件的工具。例子:public interface ICommonUserService { public User login(int id, String name); public User getUserById(long id); ...
java代码使用thrift2操作hbase示例,thrift2连接hbase添加数据,单条查找,删除数据,根据扫描器查找,修改数据等测试实例
通过Java接口创建Thrift文件 功能列表 支持参数名 支持注释 支持自定义异常 例子 public interface ICommonUserService { public User login ( int id , String name ); public User getUserById ( long id ); ...
通过java api 接口 利用thrift读取hbase表中的数据 解压后包含两个文件 一个是实验步骤文档 一个是java 代码
thrift 生成的java包 全部的包,一次下全了。。。
Thrift作为可伸缩的跨语言服务开发框架,网上的资源较少,这里是一个简单的入门小程序,文件中的mylib下包含了依赖的jar包,并且在file目录下放了一个简单的thrift文件和生成thrift-0.9.0.exe工具,直接使用 thrift-...
利用thrift代码生成工具生成rpc远程调用需要的代码,并包含生成代码所需要的jar
Gradle Swift插件使用Swift2Thrift代码生成器从.thrift Swift注释的Java文件中生成.thrift文件。 用法 适用于所有Gradle版本的构建脚本代码段: buildscript { repositories { maven { url ...
一个java和python的thrift例子,其中java作为服务端,python作为客户端
采用java操作thrift代码示例
Thrift java demo实例,通过简单的例子,帮助初学者理解Thrift
thrift java build jar
thrift-0.9.2 for java 的依赖包,libthrift-0.9.2.jar
更有甚者,有时候 业务中可能已经存在一组类足以描述rpc的请求或者response,但为了使用thrift又编译一组类,同时需要一组转换的工具类,使得 代码膨胀厉;传统的thrift没有实现协议转换,比如 json与thrift的协议...
thrift通过http实现的一个java例子!
thrift 生成的java包httpclient-4.1.2.jar
Thrift双向通讯java代码
thrift通过IDL(接口描述语言)来生成各种语言需要的接口代码。 执行thrift文件命令: java:thrift-0.9.1.exe --gen java test.thrift java:thrift-0.9.1.exe --gen php test.thrift 生成使用thrift需要的jar包:...
thrift-编译工具