protected String invUrl() {
return endpointUrl("invs", null, null);
}
protected String invUrl(String id) {
return endpointUrl("invs", id, null);
}
protected String invUrl(String id, String action) {
return endpointUrl("invs", id, action);
}
protected String endpointUrl(String entity, String id, String action) {
if (id != null && action != null) {
return UriComponentsBuilder.newInstance().scheme("http").host("localhost").port(serverPort)
.path("/mat/api/v1/" + entity + "/" + id + "/" + action).build().toUriString();
} else if (id != null) {
return UriComponentsBuilder.newInstance().scheme("http").host("localhost").port(serverPort)
.path("/mat/api/v1/" + entity + "/" + id).build().toUriString();
} else {
return UriComponentsBuilder.newInstance().scheme("http").host("localhost").port(serverPort)
.path("/mat/api/v1/" + entity).build().toUriString();
}
}
创建一个名为endpoint
的对象的方法之一,该对象保存所需的值:
public class Endpoint {
private String entity;
private String id;
private String action;
public Endpoint(String entity, String id, String action) {
this.entity = entity;
this.id = id;
this.action = action;
}
// getters, toString etc.
}
则只能有一个INVURL
方法,在该方法中构造此Endpoint
对象并将其传递给EndpointURL
方法:
protected String invUrl(String id, String action) {
return endpointUrl(new Endpoint("invs", id, action));
}
然后,endpointurl
方法可以修改为:
protected String endpointUrl(Endpoint endpoint) {
StringBuilder pathBuilder = new StringBuilder("/mat/api/v1/").append(endpoint.getEntity());
if(endpoint.getId() != null) {
pathBuilder.append("/").append(endpoint.getId());
}
if(endpoint.getAction() != null) {
pathBuilder.append("/").append(endpoint.getAction());
}
return UriComponentsBuilder.newInstance().scheme("http").host("localhost").port(serverPort)
.path(pathBuilder.toString()).build().toUriString();
}
问题内容: 我有一个客户端库,在该客户端库中对我的REST服务进行http远程调用,然后返回给客户,该客户正在调用我的库,其中包含从REST服务获得的响应以及所有错误(如果包装了任何错误)围绕对象。 这是我的枚举类: 这是我的枚举类: 如您所见,在我的课堂上我有很多领域,因此我有一个很长的构造器,每次当我做一个对象的时候都会有很大的联系。将来我可能会有更多的字段,但目前只有这些字段。 有什么更好的
问题内容: 我想验证以下行为的方法如下。 在我的@Test类中,我希望做这样的事情来验证是否使用“ exception.message”和再次使用“ exception.detail”进行了调用 但是Mockito抱怨如下 我如何告诉Mockito检查两个值? 问题答案: 进一步的阅读使我尝试使用ArgumentCaptors和以下作品,尽管比我想要的更为冗长。
我在学习Kotlin的过程中遇到了一个我想不通的问题。我想在Kotlin中扩展Java类,并且能够在不同的情况下使用它的三个构造函数中的任何一个(基于我想抛出异常时所拥有的信息)。在java中,我的类将如下所示: 有人能建议我在Kotlin如何正确地做到这一点吗?
问题内容: 我有一个PHP应用程序,有时需要处理URL,其中URL中的多个参数具有相同的名称。是否有一种简单的方法来检索给定键的所有值?PHP $ _GET仅返回最后一个值。 具体来说,我的应用程序是一个OpenURL解析器,可能会获得如下URL参数: (是的,我知道这很丑陋,欢迎来到我的世界)。请注意,键“ rft_id”出现两次: 将返回just ,先前的值()已被覆盖。 我想同时访问这两个值
我有一个场景,其中一个url“serachUser”可能带有两个不同的值(请求参数)userId或UserName。 为此我创造了两种方法 但我得到模糊映射发现异常。Spring能处理这种情况吗?