【发布时间】:2015-02-24 10:01:30
【问题描述】:
我是 RESTful API 客户端开发的新手。我有一个示例客户端代码来集成到 REST 服务器。下面是相同的快照。
public TsbPublishClient() {
client = javax.ws.rs.client.ClientBuilder.newClient();
webTarget = client.target(BASE_URI).path("publication");
}
public <T> T getJson(Class<T> responseType, String product, String version, String category) throws ClientErrorException {
WebTarget resource = webTarget;
resource = resource.path(java.text.MessageFormat.format("registry/{0}/{1}/{2}", new Object[]{product, version, category}));
return resource.request(javax.ws.rs.core.MediaType.APPLICATION_JSON).get(responseType);
}
public void close() {
client.close();
}
我的问题是如何从我的主类调用 getJson() 方法。返回类型是 T 并且它接受类型为 Class
提前致谢。
【问题讨论】:
-
这段代码是你写的吗?我不明白问题是什么。我看到的唯一问题是“我如何调用这个方法?”如果您没有编写此代码,我想知道它是否已设置为适用于您的域。请详细说明调用此方法有什么困难?
-
如果不是你写的,而且它不适合你的域,那么你就不能调用它。您只需要编写自己的代码。
-
嗨,peeskillet,不,我得到了上面的类文件来与 REST 服务器集成。
-
只需执行类似
Product product = getJson(Product.class, p, v, c);的操作,或者您想要解组的返回 Java 类型。将任何类传递给第一个参数,这将是返回类型。也许对泛型做一些研究