Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.
Jersey es un framework open source para el desarrollo de servicios web REST.
pom.xml
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.8</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>1.8</version>
</dependency>
com.pablomonteserin.JSONService.java
@Path("/json/invitado")
public class JSONService {
@GET
@Path("/get")
@Produces(MediaType.APPLICATION_JSON)
public Invitado getInvitadoInJSON() {
Invitado i = new Invitado("Juan");
return i;
}
@GET
@Path("/getList")
@Produces(MediaType.APPLICATION_JSON)
public ArrayList<Invitado> getInvitadosInJSON() {
ArrayList<Invitado> invitados = new ArrayList();
invitados.add(new Invitado("Paco"));
invitados.add(new Invitado("Nuria"));
invitados.add(new Invitado("Rosa"));
return invitados;
}
}
src/main/java/webapp/WEB-INF/web.xml
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<servlet>
<servlet-name>jersey-serlvet</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.pablomonteserin</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jersey-serlvet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
</web-app>
Url de acceso:
dominio.com/nombre_proyecto/rest/url_de_la_clase/url_del_metodo
http://localhost:8081/pruebarest/rest/json/invitado/get
Paso de parámetros por GET
@GET
@Path("/get/{nombre}/{apellido}")
@Produces(MediaType.APPLICATION_JSON)
public Invitado getInvitadoInJSON(@PathParam("nombre") String nombre,@PathParam("apellido") String apellido) {
System.out.println(nombre + " - " + apellido);
}
http://localhost:8081/pruebarest/rest/json/invitado/get/paco/rodriguez