Persistencia: explorando JPA e Hibernate desde cero 11. Operaciones en cascada en las relaciones JPA

Поделиться
HTML-код
  • Опубликовано: 19 окт 2024
  • Parte 11 del tutorial "Persistencia: explorando JPA e Hibernate desde cero" donde continuamos estudiando las relaciones entre entidades. En esta parte hablaremos de las operaciones en cascada.
    Puntos tratados:
    ¿Qué son las operaciones en cascada?
    Tipos de operaciones en cascada
    Entidades huérfanas (orphan removal)
    Parte práctica
    La agrego a una lista de reproducción que he creado para que todas las partes estén agrupadas.
    El código desarrollado en este tutorial estará publicado en la parte 12 del tutorial.
    Es recomendable haber visto los tutoriales anteriores de la lista • Persistencia: exploran...
    Todos los video están disponibles en la web del Laboratorio de Rafa: laboratorioraf...
    #Programación #Lógica #Java #Informática #Tutorial #Gratis #Free #Algoritmos #Software #IDE #Objetos #Clases #Herencia #BBDD #persistence #postgresql #mysql #Maven #jpa #hibernate

Комментарии • 7

  • @ritmos8406
    @ritmos8406 3 месяца назад +1

    Me gusta su trabajo Profesor.

  • @miguels.v.7737
    @miguels.v.7737 14 дней назад

    Hola Rafa! Lo primero enhorabuena por este trabajo. Me está siendo de gran ayuda, muchas gracias. Entiendo perfectamente los cascades de tipo PERSIST, MERGE y REMOVE pero no acabo de ver los de tipo DETACH y REFRESH. He probado a hacer un MERGE y un DETACH en tu ejemplo y funciona tal como comentas en el video (se actualizan los alumnos), es como si el DETACH no funcionara. Por ejemplo, ¿primero hace un merge de las entidades hijas (alumnos) y luego los saca del contexto de persistencia (detach)? No le veo el sentido porque el entityManager.merge, al contrario que el entityManager.persist o el entityManager.find no introduce a las entidades en el contexto de persistencia. Muchas gracias de nuevo.

    • @ellaboratorioderafa
      @ellaboratorioderafa  14 дней назад

      Muchas gracias por tu comentario. Esas 2 alternativas se usan bastante poco y tienen el siguiente propósito: DETACH: Propaga la desvinculación del contexto de persistencia a las entidades relacionadas y REFRESH: Propaga la actualización desde la base de datos a las entidades relacionadas. Formas para probar: DETACH -> Verificar que las entidades relacionadas a un Entidad con esta propiedad, quedan fuera del contexto de persistencia cuando sacas a la entidad del contexto. REFRESH -> Haces cambios y una Entidad y en sus entidades relacionadas estando todas fuera del contexto de persistencia, cuando ejecutas el MERGE, la base de datos debe quedar sincronizada con los cambios realizados en la entidad con la propiedad y en sus entidades relacionadas. Espero que esto aclare tu duda y si no es así, házmelo saber. Saludos!

    • @miguels.v.7737
      @miguels.v.7737 14 дней назад

      @@ellaboratorioderafa Muchas gracias Rafa. Voy a probarlo y te comento. Si me permites y como idea de futuro para próximos tutoriales, no estaría mal hacer una API Rest con Spring Boot ahora que están tan de moda. O también, microservicios con Spring Boot.

    • @ellaboratorioderafa
      @ellaboratorioderafa  13 дней назад

      @@miguels.v.7737 pues estás de suerte, jajaja, justo empecé un nuevo tutorial hace poco: ruclips.net/video/XrrdqrnU_xo/видео.html

    • @miguels.v.7737
      @miguels.v.7737 13 дней назад

      @@ellaboratorioderafa Lo seguiré con atención. Veo que también cambiaste el IDE a intellij!! (buena elección). ;-) Muchas gracias.