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 sobre validaciones

Cómo sabrán, en el curso se utilizan validaciones cómo @NotNull y @NotBlank, las cuales determinan que un elemento no puede ser nulo, y que no puede ser nulo ni vacío respectivamente. En el código de Diego noto que utiliza "not null" en los .sql, lo cual sería un condicionante para que un valor ingresado no sea aceptado si es nulo.

Mi pregunta es: si utilizamos las validaciones @NotNull/@NotBlank; no sería redundante escribir el "not null" en el .sql?

No es que sea algo molesto escribirlo, pues son sólo 10 caracteresxd Pero aún así me gustaría saber que en el .sql sería necesario agregarlo.

1 respuesta
solución!

Hola Lautaro,

Es una pregunta muy interesante y relevante. En realidad, no es redundante usar @NotNull/@NotBlank en tu código Java y "NOT NULL" en tu script SQL. Aquí está el porqué:

  1. @NotNull/@NotBlank: Estas son validaciones a nivel de aplicación. Cuando se utilizan en el código Java, se está asegurando que los datos no sean nulos antes de que lleguen a la base de datos. Esto puede ser útil para proporcionar mensajes de error más específicos y amigables para el usuario.

  2. "NOT NULL" en SQL: Esta es una restricción a nivel de base de datos. Asegura que, independientemente de lo que suceda en la aplicación, la base de datos no aceptará un valor nulo para ese campo.

Por lo tanto, aunque parezca que se está duplicando el esfuerzo, en realidad se está proporcionando dos niveles de seguridad para los datos. En un escenario ideal, las validaciones a nivel de aplicación deberían ser suficientes. Sin embargo, en el mundo real, los errores pueden ocurrir, y la restricción "NOT NULL" en la base de datos actúa como una red de seguridad adicional.

Espero que esto aclare tus dudas. Mucho éxito en todo lo que te propongas y si tienes alguna duda aquí estaremos para apoyarte.

¡Vamos juntos!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios.