Creando un servicio REST de consulta y persistencia en base de datos

A lo largo del curso aprendí un nuevo estilo para el consumo de información a través de servicios REST ((Representational State Transfer), basado en ASP.NET. En realidad este tipo de servicio a diferencia de servicios web SOAP  es un nuevo estilo de arquitectura para desarrollar servicios. El cumple las siguientes premisas.

  • Sin estado : No se mantiene el estado, ya que cada petición es independiente de cualquier otra petición.
  • Son cliente / servidor : Hay comunicación entre ambas partes, pero bien diferenciadas y independientes (separan responsabilidades).
  • Cacheable: Los datos obtenidos (json) se pueden mantener en cache y con esto mejorar el performance del aplicativo.
  • Puede ser en capas: Está orientado a la escalabilidad y puede ver en el intermedio un balanceador de los servicios.
  • Son servicios uniformes : Quiere decir que se puede utilizar funciones uniformes siguiendo un esquema CRUD.

A continuación se muestra como crear un servicio REST el cual puede consultar datos de una base de datos , así como guardar contenido.

Escenario = “Se requiere obtener y/o registrar reservas de una sala mediante un formulario asp.net utilizando un servicio REST, las reservas se guardarán en una base de datos en su tabla respectiva”.

 

  1. Creamos un proyecto del tipo WCF Application Service
  2. Creamos una carpeta llamada “Dominio” en donde colocaremos nuestra entidad llamada “Reserva”
  3. Creamos una carpeta llamada “Persistencia” en donde colocaremos nuestra entidad “ReservaDAO” la cual la utilizaremos para las operaciones de persistencia de datos.
  4. Luego agregamos un servicio llamada “ReservaServiceRest”
  5. Nuestro proyecto quedará de la siguiente manera:
  6. 1
  7. Nuestra base de datos ReservaDB tiene una tabla llamada Reserva, con la siguiente definición.
  8. 2
  9. Luego de esto creamos modificamos nuestra clase Reserva para que representa a nuestra tabla en la base de datos y realizamos las configuraciones para que sea compatible con el servicio WCF.
  10. 3
  11. Escribimos nuestras operaciones en la capa de persistencia DAO.
  12. 4
  13. Luego configuramos nuestra interface del servicio para luego implementarla en el servicio ReservaServiceRest.svc.
  14. 5
  15. Como verán a los métodos de la interface se les configura el tipo de Métod Rest que se le asignará, en este caso los tipos POST y GET, así como la nomenclatura en la URITemplate que podrá ser utilizado desde el browser.
  16. La url como podrá ser utilizada nuestro servicio podrá ser por ejemplo http://servidor/reservas/1 , en donde el último valor representa el código de la reserva que está presente en la base de datos. Esta es una forma fácil de publicar y consumir servicios desde la propia url del browser.
  17. Su implementación en el servicio quedaría de la siguiente manera.
  18. 6
  19. Una vez ya implementado el servicio podemos ejecutarlo y probarlo desde la web, de la siguiente manera.  http://localhost:63870/ReservasService.svc/reservas/5439
  20. 7
  21. Lo podemos validar en la base de datos los resultados obtenidos.
  22. 8
  23. Con esto hemos terminado de crear nuestro primer servicio REST para ser consumido desde cualquier aplicativo.
  24. Tener en cuenta que los datos obtenidos por nuestro servicio rest son de tipo JSON, lo cual hace que a diferencia de obtener XML nuestro servicio sea más ligero.
Referencias de post : http://www.arquitecturajava.com/servicios-rest/

 

 

 

 

También te podría gustar...