Jakarta RESTful Web Services - Jakarta RESTful Web Services

Jakarta RESTful Web Services (JAX-RS)
Autor (es) original (is) Sun Microsystems
Desenvolvedor (s) Eclipse Foundation
Versão estável
3.0 / 30 de junho de 2020 ; 14 meses atrás ( 2020-06-30 )
Repositório
Escrito em Java
Sistema operacional Plataforma cruzada
Plataforma Java
Modelo Framework de aplicação
Licença EPL 2.0 ou GPL v2 com exceção do Classpath
Local na rede Internet projects .eclipse .org / projects / ee4j .jaxrs Edite isso no Wikidata

Jakarta RESTful Web Services , ( JAX-RS ; anteriormente Java API para RESTful Web Services) é uma especificação Jakarta EE API que fornece suporte na criação de serviços da web de acordo com o padrão de arquitetura Representational State Transfer (REST). JAX-RS usa anotações , introduzidas no Java SE 5 , para simplificar o desenvolvimento e implementação de clientes de serviço da web e terminais.

A partir da versão 1.1, JAX-RS é uma parte oficial do Java EE 6. Uma característica notável de ser uma parte oficial do Java EE é que nenhuma configuração é necessária para começar a usar JAX-RS. Para ambientes não Java EE 6, uma pequena entrada no descritor de implementação web.xml é necessária.

Especificação

JAX-RS fornece algumas anotações para auxiliar no mapeamento de uma classe de recurso (um POJO ) como um recurso da web. As anotações usam o pacote Java jakarta.ws.rs (anteriormente era, javax.ws.rsmas foi renomeado em 19 de maio de 2019). Eles incluem:

Além disso, ele fornece anotações adicionais aos parâmetros do método para extrair informações da solicitação. Todas as @*Paramanotações assumem uma chave de alguma forma que é usada para pesquisar o valor requerido.

  • @PathParam vincula o parâmetro do método a um segmento de caminho.
  • @QueryParamassocia o parâmetro do método ao valor de um parâmetro de consulta HTTP .
  • @MatrixParamvincula o parâmetro do método ao valor de um parâmetro de matriz HTTP .
  • @HeaderParamvincula o parâmetro do método a um valor de cabeçalho HTTP .
  • @CookieParamvincula o parâmetro do método a um valor de cookie .
  • @FormParamvincula o parâmetro do método a um valor de formulário .
  • @DefaultValueespecifica um valor padrão para as ligações acima quando a chave não é encontrada.
  • @Contextretorna todo o contexto do objeto (por exemplo @Context HttpServletRequest request).

JAX-RS 2.0

Em janeiro de 2011, o JCP formou o grupo de especialistas JSR 339 para trabalhar no JAX-RS 2.0. Os principais alvos são (entre outros) uma API de cliente comum e suporte para Hipermídia seguindo o princípio HATEOAS de REST . Em maio de 2013, atingiu a fase de lançamento final.

Em 22-08-2017, a versão final da especificação JAX-RS 2.1 foi publicada. Os principais novos recursos suportados incluem eventos enviados pelo servidor , clientes reativos e JSON-B.

Implementações

As implementações de JAX-RS incluem:

Referências

links externos

Tutoriais