Saltar al contenido

Entidad Java: ¿por qué necesito un constructor vacío?

Después de investigar con expertos en el tema, programadores de varias áreas y profesores hemos dado con la solución al dilema y la plasmamos en esta publicación.

Solución:

Se necesita un constructor vacío para crear una nueva instancia a través de la reflexión de su marco de persistencia. Si no proporciona ningún constructor adicional con argumentos para la clase, no necesita proporcionar un constructor vacío porque obtiene uno por defecto.

También puede usar la anotación @PersistenceConstructor que se parece a la siguiente

@PersistenceConstructor
public Movie(Long id) 
    this.id = id;

para inicializar su entidad si Spring Data está presente en su proyecto. Por lo tanto, también puede evitar el constructor vacío.

Pero java siempre le da un constructor vacío invisible predeterminado (si no redefine uno).

Esta declaración es true solo cuando no proporciona ningún constructor en su clase. Si se proporciona un constructor de argumentos en su clase, jvm no agregará el constructor sin argumentos.

No es necesario definir explícitamente un constructor predeterminado a menos que proporcione otro constructor para la entidad. Si proporciona otro constructor, además de uno con la firma del constructor predeterminado, no se creará el constructor predeterminado.

Dado que las implementaciones de JPA se basan en la existencia de un constructor predeterminado, es necesario incluir el constructor predeterminado que se omitirá.

Te invitamos a confirmar nuestro trabajo dejando un comentario y dejando una valoración te lo agradecemos.

¡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 *