UriComponentsBuilder
是Spring Framework中的一个用于构建URI(Uniform Resource Identifier)和URL(Uniform Resource Locator)的实用程序类。它提供了一种简单的方式来构建包含各种部分(如协议、主机、路径、查询参数等)的URI和URL,并支持对这些部分进行修改、替换和合并等操作。
以下是一个简单的示例,演示了如何使用UriComponentsBuilder
构建URL:
import org.springframework.web.util.UriComponentsBuilder;
public class Main {
public static void main(String[] args) {
UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl("https://www.example.com")
.path("/api/resource")
.queryParam("param1", "value1")
.queryParam("param2", "value2");
String url = builder.toUriString();
System.out.println("URL: " + url);
}
}
在这个示例中,我们使用fromHttpUrl
方法创建了一个UriComponentsBuilder
对象,并传入URL字符串作为参数。然后,我们使用path
方法添加了路径部分/api/resource
,并使用queryParam
方法添加了两个查询参数:param1=value1
和param2=value2
。最后,我们调用toUriString
方法获取构建的URL字符串,并将其打印出来。
UriComponentsBuilder
类提供了许多常用的API来构建和修改URI和URL。以下是一些常见的方法:
fromHttpUrl(String url)
: 根据给定的URL字符串创建一个UriComponentsBuilder
对象。scheme(String scheme)
: 设置URI的协议部分。host(String host)
: 设置URI的主机部分。port(int port)
: 设置URI的端口部分。path(String path)
: 添加路径部分到URI。queryParam(String name, Object... values)
: 添加查询参数到URI。replacePath(String path)
: 替换URI的路径部分。replaceQueryParam(String name, Object... values)
: 替换指定名称的查询参数。fragment(String fragment)
: 设置URI的片段部分。build()
: 构建一个UriComponents
对象。toUriString()
: 获取构建的URI字符串。