Commit 77d3b218 by Patryk Czarnik

Przykład obłsugi parametrów

parent 467f6307
package hello; package hello;
import jakarta.ws.rs.GET; import jakarta.ws.rs.*;
import jakarta.ws.rs.Path; import jakarta.ws.rs.core.NewCookie;
import jakarta.ws.rs.Produces; import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.QueryParam;
import java.time.LocalDateTime;
import java.util.Arrays;
@Path("/parametry") @Path("/parametry")
@Produces("text/plain")
public class Parametry { public class Parametry {
@Path("/witaj") @Path("/witaj")
@GET @GET
@Produces("text/plain")
// w Springu byłoby tak: @GetMapping(path="/witaj", produces="text/plain") // w Springu byłoby tak: @GetMapping(path="/witaj", produces="text/plain")
public String witaj(@QueryParam("imie") String imie) { public String witaj(@QueryParam("imie") String imie) {
return "Witaj " + imie; return "Witaj " + imie;
} }
// .../api/parametry/query?a=Ala&b=Basia&t=Tomek&t=Tadeusz&t=Tola
@GET
@Path("/query")
public String query(
@QueryParam("a") String a,
@QueryParam("b") String b,
@QueryParam("t") String[] t) {
return "Parametr a = " + a
+ "\nParametr b = " + b
+ "\nTablica: " + Arrays.toString(t);
}
// .../api/parametry/query;a=Ala;b=Basia;t=Tomek;t=Tadeusz;t=Tola
@GET
@Path("/matrix")
public String matrix(
@MatrixParam("a") String a,
@MatrixParam("b") String b,
@MatrixParam("t") String[] t) {
return "Parametr a = " + a
+ "\nParametr b = " + b
+ "\nTablica: " + Arrays.toString(t);
}
// /api/parametry/path/Ala/123/98765qwerty@res-zta
@GET
@Path("/path/{a}/{b}/{cyfry:\\d+}{litery:\\w+}{reszta}")
public String pathParam(
@PathParam("a") String a,
@PathParam("b") String b,
@PathParam("cyfry") String cyfry,
@PathParam("litery") String litery,
@PathParam("reszta") String reszta
) {
return "Parametr a = " + a
+ "\nParametr b = " + b
+ "\nCyfry: " + cyfry
+ "\nLitery: " + litery
+ "\nReszta: " + reszta;
}
@GET
@Path("/headers")
public String headers(
@HeaderParam("accept") String accept,
@HeaderParam("user-agent") String agent
) {
return "Accept: " + accept
+ "\nUser-Agent: " + agent;
}
@GET
@Path("/cookies")
public String cookies(
@CookieParam("ciacho") String ciacho,
@CookieParam("JSESSIONID") String sessionId
) {
return "Ciacho: " + ciacho
+ "\nSesja: " + sessionId;
}
@GET
@Path("/ustaw")
// ustawia ciacho
public Response ustawCiacho() {
String ciacho = LocalDateTime.now().toString();
return Response.ok()
.cookie(new NewCookie.Builder("ciacho").value(ciacho).build())
.type("text/plain")
.entity("Ustawiam ciacho na: " + ciacho)
.build();
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment