miércoles, 4 de octubre de 2017

How To: Cliente REST con Spring Boot


Ya hemos hecho anteriormente un ejemplo de como crear un servicio REST con Spring Boot y otras cosillas, puedes verlo aquí

Ahora iremos un pasito más alla, vamos a crear su correspondiente cliente. Para un cliente REST normal, utilizariamos la clase HttpClient de Apache. En vez de eso usaremos RestTemplate, que es una clase que nos proporciona Spring IO y con la cual podremos hacer todas las operaciones a más alto nivel (puedes ver más info aquí).

En base al tipo de servicio REST que llamemos, utilizaremos un método u otro de RestTemplate. Spring nos ofrece varios métodos de utilidad para cada tipo de llamada REST (GET, POST, PUT o DELETE). En este caso usaremos el método 'getForObject' que nos permite realizar una llamada GET a la URL que le indiquemos, y que la salida (que debe ser 'application/json') la convertirá en el objeto que le indiquemos.


@Service
public class BookRestClient {
 public static final String REST_SERVICE_URI = "http://localhost:8085";
 public Book getBook(final Integer id) {
  RestTemplate restTemplate = new RestTemplate();
  return restTemplate.getForObject(REST_SERVICE_URI + "/book/" + id, Book.class);
 }
} 

No hay comentarios:

Publicar un comentario