Qual é a diferença entre QueryParam e pathParam em Webservices?


Melhor resposta

Olá!

Vamos discutir

QueryParam: – No serviço Restful, tudo é baseado no protocolo Http.

Portanto, sempre que quisermos enviar alguns dados, podemos enviar esses dados usando o parâmetro de consulta anexado ao url.

Exemplo: –

http://localhost:8081/SearchApp/book?name=java Aqui QueryParam é o nome. e seu valor é java.

Então, aqui QueryParams são opcionais, não é obrigatório enviar o parâmetro de consulta.

então, se você não anexar o QueryParam, não obterá o erro 404. Pode ser que você obtenha alguma exceção nullPointer, pois o valor será nulo.

@GET

@Path("/book")

List getBooks(@QueryParam("name")String bookName){

}

PathParam: -Então, se você deseja enviar os dados como obrigatórios, você pode anexar o valor como um segmento diretamente à url. Se você não anexar o parâmetro de caminho, obterá o erro 404.

Exemplo: – http://localhost:8081/SearchApp/book/java (aqui, diretamente, o valor java é anexado como segmento de url)

Em serviço

Você pode recuperar assim: –

@GET

@Path("/book/{bookname}")

List getBooks(@PathParam("bookname")String bookName){

}

Resposta

Em um esquema REST comum, a parte do caminho do URL representa a hierarquia de classes de entidade (/ Tables / Dining tabela). Por outro lado, os parâmetros de consulta podem ser reservados para os atributos para localizar a instância da classe para obter resultados mais específicos. Por exemplo, você gostaria de obter uma lista de mesas de jantar de cor marrom abaixo de Url

// produtos / mesas / mesa de jantar? Color = brown

@PathParam é usado para combinar uma parte do URL como um parâmetro. Por exemplo, em um url no formato http://example.com/tables/{diningtable}, você pode usar @PathParam (“diningtable”) para acessar a classe de entidade jantar.

QueryParam é usado para acessar pares de chave / valor na string de consulta do URL (a parte após o?). Por exemplo, no url http://example.com/ tabelas / mesa de jantar? Color = brown, você pode usar @QueryParam (“color”) para obter o valor da cor que é marrom.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *