如何使用 jersey-servlet 为同一个 url 管理多个参数
How to manage many number of parameters for a same url with jersey-servlet
我正在开发一个 REST API,它有大约 20 个服务。所有都是具有相同 URL 的 HTTP GET 请求,但针对不同的服务具有不同的参数。整个 API 总共有大约 100 个参数。我正在为 API.Is 使用 Jersey 库,有没有更好的方法来管理这些大量参数?
@GET
@Path("/processMessage")
@Produces({MediaType.APPLICATION_XML})
public Response processMessage(
@QueryParam("a") String a,
@QueryParam("b") String b,
@QueryParam("c") String c,
@QueryParam("d") String d,
@QueryParam("e") String e,
@QueryParam("f") String f,
@QueryParam("g") String g,
@QueryParam("h") String h,
@QueryParam("h") String z,
)
}
`
使用UriInfo
获取所有参数:
public Response processMessage(@Context UriInfo uriInfo) {
MultivaluedMap<String, String> queryParams = uriInfo.getQueryParameters();
@Context
UriInfo uriInfo;
An instance of UriInfo can be injected as field or method parameter using the @Context annotation. UriInfo provides access to application and request URI information
我正在开发一个 REST API,它有大约 20 个服务。所有都是具有相同 URL 的 HTTP GET 请求,但针对不同的服务具有不同的参数。整个 API 总共有大约 100 个参数。我正在为 API.Is 使用 Jersey 库,有没有更好的方法来管理这些大量参数?
@GET
@Path("/processMessage")
@Produces({MediaType.APPLICATION_XML})
public Response processMessage(
@QueryParam("a") String a,
@QueryParam("b") String b,
@QueryParam("c") String c,
@QueryParam("d") String d,
@QueryParam("e") String e,
@QueryParam("f") String f,
@QueryParam("g") String g,
@QueryParam("h") String h,
@QueryParam("h") String z,
)
}
`
使用UriInfo
获取所有参数:
public Response processMessage(@Context UriInfo uriInfo) {
MultivaluedMap<String, String> queryParams = uriInfo.getQueryParameters();
@Context
UriInfo uriInfo;
An instance of UriInfo can be injected as field or method parameter using the @Context annotation. UriInfo provides access to application and request URI information