Saltar al contenido

¿Cuál es la diferencia entre Spring Entity Manager y Spring Data Repository?

Necesitamos tu apoyo para extender nuestros posts acerca de las ciencias de la computación.

Solución:

Estas dos interfaces presentan dos enfoques diferentes:

  • org.springframework.data.repository.CrudRepository es una interfaz común para repositorios que proporcionan operaciones CRUD.
  • javax.persistence.EntityManager está asociado con un contexto de persistencia. Spring tiene su propia interfaz que se extiende CrudRepository
    llamó JpaRepository para estos fines.

Espero que conozca los beneficios o desventajas de la API persistente. Si no lo hace, puede leer las respuestas a esta pregunta.

Hay varias capas de trabajo con datos persistentes en Java/Spring:

  • JDBC
  • Plantilla Jdbc
  • JPA (contiene EntityManager)
  • Spring Data JPA (contiene Repository)

Cada abstracción protege a los desarrolladores de los detalles de nivel inferior, pero puede traer sus propias complejidades. JdbcTemplate es una abstracción delgada sobre JDBC simple.
Repository es una abstracción sobre EntityManager. Protege a los desarrolladores de algunos detalles complejos que se introducen con EntityManager y agrega código repetitivo y muchos métodos convenientes.

Por ejemplo, CrudRepository añade la implementación de findAll(), que es tan común que tiene sentido predefinirlo. Los repositorios tienen muchos métodos convenientes para generar consultas a partir de nombres de métodos (convención sobre configuración), desde las propias entidades (Consulta por ejemplo). Permiten usar una buena API fluida con seguridad de tipos con Query DSL o habilitar proyecciones dinámicas.

Si tienes alguna suspicacia y disposición de acrecentar nuestro división eres capaz de añadir una acotación y con mucho placer lo estudiaremos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *