gpt4 book ai didi

java - 如何以编程方式从 javax.rs.ws.core.UriInfo 获取矩阵参数

转载 作者:行者123 更新时间:2023-11-30 03:33:38 25 4
gpt4 key购买 nike

有没有办法以编程方式从javax.rs.ws.core.UriInfo获取矩阵参数?我知道您只需执行 uriInfo.getQueryParameters() 即可将查询参数作为 MultivaluedMap 获取。不支持矩阵参数吗?或者可以通过调用uriInfo.getPathParameters()获取它们?

最佳答案

/../ 之间路径的每个部分是 PathSegment 。由于每个段都允许使用矩阵参数,因此能够通过 PathSegment 访问它们是有意义的。 。输入 PathSegment#getMatrixParameters() :-)。所以..

List<PathSegment> pathSegments = uriInfo.getPathSegments();
for (PathSegment segment: pathSegments) {
MultivaluedMap<String, String> map = segment.getMatrixParameters();
...
}

也可以注入(inject) PathSegment

@Path("/{segment}")
public Response doSomething(@PathParam("segment") PathSegment segment) {}

您还可以注入(inject) List<PathSegment>对于路径模板正则表达式允许多段匹配的情况。例如

@Path("{segment: .*}/hello/world")
public Response doSomething(@PathParam("segment") List<PathSegment> segments) {}

如果 URI 为 /stack/overflow/hello/world ,然后是段 stackoverflow将被放入列表中。

也可以代替注入(inject)PathSegment ,我们可以简单地使用 @MatrixParam注入(inject)矩阵参数的值

@Path("/hello")
public Response doSomething(@MatrixParam("world") String world) {}

// .../hello;world=Hola!

关于java - 如何以编程方式从 javax.rs.ws.core.UriInfo 获取矩阵参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28487947/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com