Veamos otro ejemplo enviando la lista de roles completo, no solamente el nombre, sino también el Heidy
bueno, el rol o el código del rol con guión bajo el nombre y también el nombre visible, que sería
el nombre que estamos mostrando en el tetos en el formulario.
Bueno, cómo lo podemos implementar?
Primero tenemos que crear una clase rol.
Nos vamos entonces el proyecto nos vamos al Package Models Domaine y creamos una clase.
Rol.
Con atributo
Intercom, siempre con el Heidy, pero también vamos a tener el nombre.
Éste sería el nombre visible y el código que le vamos a llamar rol.
Bueno, el rol sería rol, guión bajo el nombre y todo mayúscula.
Guiteras, setter marcamos todos.
También un constructor.
Por ejemplo, usando campos, usando Fields.
Con los argumentos y di nombre y rol.
Quitamos el súper.
Y un constructor vacío.
Sin parámetros.
Y formateados perfecto.
Hoy tenemos la clase.
El siguiente paso.
Bueno, usuario tiene una relación con una lista de roles, pero del tipo string.
Ahora es del tipo rol.
Entonces la idea es no solamente enviar el string con el nombre o el código del rol, sino enviar el
objeto completo, el rol completo con el Heidy.
Con todo guardamos.
Bueno, y como cambiamos acá también tenemos que cambiar lo que transceptor.
Nos vamos al error, cambiamos acá a rol y acá también guardamos.
Volvemos arriba.
Qué más?
Qué faltaría?
Bueno, una clase servis hizo interfaz para rol.
12 Primero, la interfaz.
Finalizar.
Con un par de métodos o contrato.
El metodo Alister
y tambien buscar por ahi obtener predi o buscar por ahi como queramos
integer Heidy.
Le importamos, listo.
Rol importante, qué rol lo importen de nuestro bagaje, de nuestro propio pacato rol?
Nuestra clase.
Bien, ahora la clase implementa.
Vamos a crear una clase.
Agregamos interfaz, buscamos por acá rol, la seleccionamos rol, servis, ok, ok.
Antes que nada anotamos con servis, importamos bien, un constructor por acá XOR constructor vacío.
Ok.
Y acá inicializamos los datos.
Bueno, primero un atributo
roles holista como queramos.
Y acá inicializamos.
Un ArrayList.
Agregamos un rol new rol con el Heidy nombre y el rol.
Bueno, por ejemplo uno que Heidy el nombre, por ejemplo administrador.
Rol.
Admin.
Voy a copiar.
Dos más, aunque podríamos tener lo que queramos.
2 3.
Usuario.
Rol.
User en mayúscula.
Moderador.
Rol moderador.
Ahí tenemos los datos.
Bueno, bien, simple.
El Distar retornÃ roles.
La lista completa.
Y buscar?
Bueno, como siempre, tal como lo implementamos la vez pasada con países con un Ford acá buca en la
lista y retorna un solo objeto, un solo rol por el Heidy.
Ya rol resultado igual nul y tiramos acá
y acá preguntan con un if, por ejemplo, si Leydi es igual a rol, punto.
Qué Heidy entonces si son iguales, perfecto
resultado, igual error.
Es decir, asignamos acá resultado el valor del rol que corresponde a Leidy lo encontró.
Por lo tanto hacemos un break para salir del foro y retornamos.
Resultado ya.
Acá tenemos el servis, los métodos.
Entonces ahora tenemos que modificar el controlador.
Primero inyectar el servis este componente acá en el controlador.
Entonces es muy parecido también a País Service.
Rol servis importamos.
Ven y vamos a tener un método acá.
Un método modela atributos para llenar esta lista de checkbox que tenemos en el formulario con los objetos
roles con esta lista que tenemos en el servicio servis, entonces por acá.
Lyta Roles.
Recuérdame que anteriormente se llamaba Lyta Rol String, que distinto es una lista de roles, pero
del tipo string.
Y ahora tenemos una lista de roles con un jasmeet con un map de yaba con pares de nombre valor.
Pero acá sería el objeto.
Entonces retorna una lista de error lista roles.
Pero simple, disputo rol servis por acá tenemos punto listar.
Importamos rol de nuestro package perfecto, guardamos.
Ahora voy a copiar este nombre de atributo con el cual se pasa la vista en el model atributo.
Nos vamos a formulario y ahora el ID sería esto.
Nuestra nueva lista.
Lista.
Una lista de objetos del tipo rol.
Todo esto igual.
Esto se mantiene exactamente igual.
Lo que cambia acá es el Valeo.
Ya no estamos usando map de Yaba, sino el objeto Rohr.
Una lista de roles.
12 Rol.
Punto.
Lo que vamos a enviar entonces es el Heidy.
Porque recuerden que estamos buscando Prady.
Después tenemos que tener nuestro property editors para roles.
Vamos a obtener este Heidy que enviamos y vamos a buscar el rol y lo asignamos.
Es decir, asignamos el rol completo.
El objeto completo.
Cambiamos el Heidy por el objeto rol completo y en value el nombre dos Heidy y nombre.
Recuerden que la clase Rol tiene atributos Heidy nuestra llave nombre en nombre visible que se muestra
en el formulario y el rol que sería como el nombre rol.
Pero para Spring Security.
Por ejemplo.
Y todo lo demás es exactamente igual.
Se valía por rol, todo se mantiene igual.
Entonces, qué faltaría?
Faltaría solamente nuestro property editors.
Nada más, pero lo dejamos para la siguiente clase, así que quedamos hasta acá y nos vemos en la próxima
clase.