0% encontró este documento útil (0 votos)
2 vistas

JAX-RS Servicios RESTFull en Java

El documento describe cómo construir un servicio REST utilizando JAX-RS, explicando las anotaciones principales como @GET, @POST, @DELETE, @PUT, @Path y @Produces. Se presenta un ejemplo de código que implementa un servicio para gestionar una lista de personas en formato JSON. Además, se menciona que se utilizará un formulario HTML para agregar nuevas personas a la lista mediante una solicitud POST.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
2 vistas

JAX-RS Servicios RESTFull en Java

El documento describe cómo construir un servicio REST utilizando JAX-RS, explicando las anotaciones principales como @GET, @POST, @DELETE, @PUT, @Path y @Produces. Se presenta un ejemplo de código que implementa un servicio para gestionar una lista de personas en formato JSON. Además, se menciona que se utilizará un formulario HTML para agregar nuevas personas a la lista mediante una solicitud POST.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 5

Vamos a construir un servicio REST utilizando los estandares de JAX-RS .

Para ello lo
primero que tenemos que hacer es comenzar a conocer las distintas anotaciones que el
estandar define.

@GET :Esta anotación marca un método y define una operación GET .Es similar a cuando
realizamos una petición HTTP GET y solo debe usarse en el caso que de queramos leer
información .Nunca a la hora de escribir o modificar el estado del recurso al que estemos
accediendo.

@POST :Esta anotación marca un método y define una operación POST .Es similar a cuando
realizamos una petición HTTP POST y se usa para añadir un recurso o modificar un recurso
existente.

@DELETE :Esta anotación marca un método y define una operación DELETE .Como su

www.arquitecturajava.com
nombre indica se trata de eliminar un recurso del servidor . No siempre se usa ya que
redirecciona a traves de POST cuando trabajamos con HTML plano.

@PUT : Esta anotación se encargar de reemplazar un recurso del servidor y como en el caso
anterior suele redireccionarse a traves de POST.

@Path :Esta anotación es distinta a las anteriores y se encarga de definir un punto de


entrada al servicio. Puede usarse tanto a nivel de clase como a nivel de método.

@Produces :Esta anotación se encarga de que el contenido del servicio REST sea generado
con distintos formatos.En nuestro caso usaremos JSON

Vamos a ver un ejemplo de código sencillo.

package com.arquitecturajava.serviciosexternos;

import java.util.ArrayList;
import java.util.List;

import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MultivaluedMap;

@Path("/servicioPersonas/")
@Produces("application/json")
public class ServicioPersonas {

private static List<Persona> listaPersonas = new

www.arquitecturajava.com
ArrayList<Persona>();

public ServicioPersonas() {
super();
Persona yo = new Persona("pedro", "perez");
listaPersonas.add(yo);
}

@GET
@Path("/personas")
public List<Persona> getPersonas() {

return listaPersonas;
}

@POST
@Path("/personas")
public void addPersona(MultivaluedMap<String,
String> parametros) {

Persona p = new Persona(parametros.getFirst("nombre"),


parametros.getFirst("apellidos"));
listaPersonas.add(p);
}
}

En este caso hemos utilizado un servicio REST que se encarga de mostrar las personas que
tenemos almacenas en una variable “listaPersonas” que al ser estatica se mantiene en
memoria. Por lo tanto definir un método GET es suficiente para acceder a la información.
Este método se apoya en la anotación @Produces para generar información en formato

www.arquitecturajava.com
JSON.

Una vez hemos invocado la primera vez al servicio via URL podemos usar un formulario
HTML para invocar al metodo /personaa pasando los parametros por POST y añadiendo
nuevas personas a la lista

<html>
<body>
<form method="POST"
action="rest/servicioPersonas/personas">
<input type="text" name="nombre"/>
<input type="text" name="apellidos"/>
<input type="submit"/>
</form>
</body>
</html>

Realizada esta operación la lista de personas queda modificada.

www.arquitecturajava.com
Aunque el ejemplo es muy sencillo muchas veces es mas complicado configurar algún
framework para que pueda construir estos servicios .En el siguiente POST hablaremos de
como configurar Apache CXF para que este servicio REST funcione sin problemas.

www.arquitecturajava.com

También podría gustarte