Ich bin neu in Web-Service & während Web-Service zu schaffen, die Anfrage akzeptiert, ich fand 2 Methoden, mit denen ich URL-Parameter lesen:Unterschied zwischen getPathParameters() & getQueryParameters()
getPathParameters() & getQueryParameters () von UriInfo. Als ich beide ausführte, bekam ich dieselbe Ausgabe. Hier ist der Code, den ich versuchte auszuführen:
@GET
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN })
public String processGETReq(@Context UriInfo pUriInfo) {
MultivaluedMap<String, String> queryParams = pUriInfo.getQueryParameters();
MultivaluedMap<String, String> pathParams = pUriInfo.getPathParameters();
Set<Entry<String, List<String>>> lQueryParamsSet = queryParams.entrySet();
Set<Entry<String, List<String>>> lPathParamsSet = pathParams.entrySet();
for (Entry<String, List<String>> lQueryEntrySet : lQueryParamsSet) {
System.out.println(lQueryEntrySet.getValue());
System.out.println(lQueryEntrySet.getKey());
}
for (Entry<String, List<String>> lPathEntrySet : lPathParamsSet) {
System.out.println(lPathEntrySet.getValue());
System.out.println(lPathEntrySet.getKey());
}
}
Der Ausgang für beide sind gleich. Also bin ich neugierig zu wissen, was der Unterschied zwischen ihnen ist. Versucht, es aus der Dokumentation (http://docs.oracle.com/javaee/6/api/javax/ws/rs/core/UriInfo.html) zu bekommen, hat aber den Unterschied nicht richtig bekommen.
Vielen Dank im Voraus für die Antworten !!
Um genauer zu sein: Wenn der Webservice seine URL wie '/ clients/$ {clientid}/sales' definiert hat, dann hätte'/clients/123/sales? Sort = asc' den Pfadparameter 'clientid = 123' und der Abfrageparameter 'sort = asc'. – Thomas