Java 使用 URI 生成器?
Java Use URI builder?
我有波纹管 url
:
http://www.example.com/api/Video/GetListMusicRelated/0/0/null/105358/0/0/10/null/null
此部分是固定且不可更改的:
http://www.example.com/api/Video/GetListMusicRelated/
我将参数设置为此 url
,如下所示:
http://www.example.com/api/Video/GetListMusicRelated/25/60/jim/105358/20/1/5/null/null
或:
http://www.example.com/api/Video/GetListMusicRelated/0/0/null/105358,5875,85547/0/0/10/null/null
我怎样才能为这个url
写一个url builder
?
试试这个...
URL domain = new URL("http://example.com");
URL url = new URL(domain + "/abcd/abcd");
如果您想使用 builder pattern
创建一个 UrlBuilder
,可以这样做:
public class UrlBuilder {
private final String root;
private int myParam1;
private String myParam2;
public UrlBuilder(final String root) {
this.root = root;
}
public UrlBuilder myParam1(int myParam1) {
this.myParam1 = myParam1;
return this;
}
public UrlBuilder myParam2(String myParam2) {
this.myParam2 = myParam2;
return this;
}
public URL build() throws MalformedURLException {
return new URL(
String.format("%s/%d/%s", root, myParam1, myParam2)
);
}
}
然后您就可以创建您的 URL
作为下一个
URL url = new UrlBuilder("http://www.example.com/api/Video/GetListMusicRelated")
.myParam1(25)
.myParam2("jim")
.build();
注意: 这只是展示了想法,所以我使用了假的参数名称和不正确的参数数量,请注意你应该有 6 个参数并设置正确的名称.
我有波纹管 url
:
http://www.example.com/api/Video/GetListMusicRelated/0/0/null/105358/0/0/10/null/null
此部分是固定且不可更改的:
http://www.example.com/api/Video/GetListMusicRelated/
我将参数设置为此 url
,如下所示:
http://www.example.com/api/Video/GetListMusicRelated/25/60/jim/105358/20/1/5/null/null
或:
http://www.example.com/api/Video/GetListMusicRelated/0/0/null/105358,5875,85547/0/0/10/null/null
我怎样才能为这个url
写一个url builder
?
试试这个...
URL domain = new URL("http://example.com");
URL url = new URL(domain + "/abcd/abcd");
如果您想使用 builder pattern
创建一个 UrlBuilder
,可以这样做:
public class UrlBuilder {
private final String root;
private int myParam1;
private String myParam2;
public UrlBuilder(final String root) {
this.root = root;
}
public UrlBuilder myParam1(int myParam1) {
this.myParam1 = myParam1;
return this;
}
public UrlBuilder myParam2(String myParam2) {
this.myParam2 = myParam2;
return this;
}
public URL build() throws MalformedURLException {
return new URL(
String.format("%s/%d/%s", root, myParam1, myParam2)
);
}
}
然后您就可以创建您的 URL
作为下一个
URL url = new UrlBuilder("http://www.example.com/api/Video/GetListMusicRelated")
.myParam1(25)
.myParam2("jim")
.build();
注意: 这只是展示了想法,所以我使用了假的参数名称和不正确的参数数量,请注意你应该有 6 个参数并设置正确的名称.