首页 > 解决方案 > JAVA中API链接的最佳设计模式

问题描述

我想在 Java 中调用一系列 API 调用。要求是某些 API 的响应将用于后续 API 调用的请求。我可以使用某些循环来实现这一点。但我想以实现通用的方式使用设计模式。有什么帮助吗?

责任链不能满足我的需要,因为我一开始不知道我的请求上下文是什么。

String out = null;
Response res = execute(req);
out += res.getOut();
req.setXYZ(res.getXYZ);
Response res = execute(req);
out += res.getOut();
req.setABC(res.getABC);
Response res = execute(req);
out += res.getOut();

System.out.println("Final response::"+out);

标签: javaapidesign-patternsmethod-chaining

解决方案


想到以下几点:

  1. 对于返回对象的函数调用:永远不要返回 null。
  2. 对于不(否则)不返回任何内容的函数调用: return this
  3. 接受 API 中的功能接口,以便用户可以自定义行为
  4. 对于如上所述公开 API 的有状态对象,提供 Builder 模式,这样用户就不会最终在构造函数之间进行选择
  5. 所描述的 Builder 的所有方法都必须是 void,因此返回this

推荐阅读