设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客

淘宝TOP4JAVA项目入驻LUPA源码赏析频道

2010-12-27 14:28| 发布者: sanool| 查看: 7714| 评论: 0

摘要: 设计原则容易维护扩展(不需要修改主类就可以添加新的API支持) 注入型解释器(依据不同的返回格式注入相应的解释器) 集中管理请求参数与参数映射 以运行时异常的方式来管理错误的响应 使用泛型来做强类型编程 多协 ...

项目源码地址

http://www.lupaworld.com/code-list-path-top4java_2.1-itemid-22.html

设计原则

  1. 容易维护扩展(不需要修改主类就可以添加新的API支持)
  2. 注入型解释器(依据不同的返回格式注入相应的解释器)
  3. 集中管理请求参数与参数映射
  4. 以运行时异常的方式来管理错误的响应
  5. 使用泛型来做强类型编程
  6. 多协议扩展支持(REST, RPC, SOAP, etc)

设计类图

扩展方式

  1. 实现TopRequest类,覆盖其中的getApiName和getTextParams方法
  2. 实现TopParser类,覆盖其中的parse方法

环境依赖

  • JDK 1.5或以上

调用方式

TopClient client = new TopRestClient("http://gw.api.tbsandbox.com/router/rest", "test", "test", "json");
UserGetRequest request = new UserGetRequest();
request
.setFields("user_id,nick,sex,created,location");
request
.setNick("tbtest520");
User user = client.execute(request, new ObjectJsonParser<User>(User.class));
TopJsonRestClient client = new TopJsonRestClient("http://gw.api.tbsandbox.com/router/rest", "test", "test");
UserGetRequest request = new UserGetRequest();
request
.setFields("user_id,nick,sex,created,location");
request
.setNick("tbtest520");
User user = client.userGet(request);
TopJsonRestClient client = new TopJsonRestClient("http://gw.api.tbsandbox.com/router/rest", "test", "test");
ItemUpdateRequest request = new ItemUpdateRequest();
request
.setIid("9ce7d2a5a38c1a20346cdd4af6f90de3");
request
.setTitle("Updated by Top4Java");
request
.setImage(new FileItem(new File("C:/temp.jpg")));
Item item = client.itemUpdate(request, "session_key");
TopJsonRestClient client = new TopJsonRestClient("http://gw.api.tbsandbox.com/router/rest", "test", "test");
TradesSoldGetRequest req = new TradesSoldGetRequest();
req
.setFields("tid,seller_nick,buyer_nick,orders.oid,orders.iid,orders.title,orders.price");
PageList<Trade> rsp = client.tradesSoldGet(req, "session_key");
List<Trade> trades = rsp.getContent();
Long totalResults = rsp.getTotalResults();

酷毙

雷人

鲜花

鸡蛋

漂亮

相关阅读

  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部