Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

[Duda] Constructor por default

Alguien me puede explicar el fundamento teórico de porque había que crear un constructor al momento del merge y porque no es necesario al momento del persist.

José Domingo Pillado Chavarría, ya contesto en otra pregunta pero no le entendí, agradecería si otra persona puede contestar esta duda ya que en otras ocasiones me ha contestado y nunca me quedaron claras sus respuestas. No quiero ser grosero con el, y de hecho agradezco su intención de colaborar con mis inquietudes pero es el único que me deja con dudas.

Desde ya muchas gracias!

1 respuesta
solución!

¡Hola Kevin! Espero que te encuentres bien. Entiendo que tienes una duda sobre el uso de constructores en JPA al momento de realizar operaciones de persistencia.

En primer lugar, es importante destacar que JPA utiliza constructores para crear nuevas instancias de entidades. Al momento de realizar una operación de persistencia con el método persist(), JPA crea una nueva instancia de la entidad y la almacena en la base de datos. En este caso, es necesario que la entidad tenga un constructor por defecto (sin argumentos) para que JPA pueda crear la instancia.

Por otro lado, al momento de realizar una operación de merge con el método merge(), JPA busca una entidad existente en la base de datos y la actualiza con los valores de la entidad que se está pasando como argumento. En este caso, no es necesario que la entidad tenga un constructor por defecto, ya que JPA no está creando una nueva instancia.

Espero que esta explicación haya sido útil para ti. Si tienes alguna otra duda, no dudes en preguntar. ¡Espero haber ayudado y buenos estudios!