Actualización de datos

Necesitamos crear un nuevo método de negocio, esta vez que permita guardar una provincia.

El método deberá recibir un Provincia por parámetro, y guardarla en la base de datos. El método deberá tirar una "ProvinciaInvalidaException" cuando:

  1. el parámetro sea null.
  2. el id de la provincia sea null.
  3. el nombre de la provincia sea null.
  4. el nombre de la provincia tenga menos de 3 caracteres.

No te olvides de seguir los mismos consejos que en el paso anterior. Recordá que todas las validaciones van en el Service.

Y en el Repository...

Como ya sospecharás, JPA y Spring Data proveen métodos útiles para guardar entidades. De hecho, existe el método "save()" que guarda el objeto dado por parámetro. ¡No mucho más por este lado!

Conclusión

Vimos como consultar y actualizar datos con Spring Data JPA. Este framework nos permite interactuar con base de datos sin tener un contacto directo con el mundo relacional, manipulando objetos de negocio.

JPA provee además mucha más funcionalidad, como ser mapeos complejos (muchos-a-uno, uno-a-muchos, muchos-a-muchos), creación automática de id, herencia, discriminadores, etc.

El manual de Hibernate con JPA es muy completo y explica todos estos conceptos. Más aún, en internet hay infinidad de tutorials y notas sobre el uso de Hibernate.