Hay muchas formas de usar Reflection en Java, en esta ocasión un ejemplo sencillo implementado en un proyecto Web, que utiliza Java Server Faces.
Tenemos un entity llamado Reservadoagente que definimos con JMoordb
Deseamos asignar el valor de 3 a los atributos turnodia2 hasta turnodia3, para mostrar en un datatable como se muestra en el ejemplo:
Class[] paramInt = new Class[1];
paramInt[0] = Integer.TYPE;
for (Agente a : agenteList) {
Reservadoagente reservadoagente = new Reservadoagente();
reservadoagente.setAgente(a);
Class cls = reservadoagente.getClass();
Object obj = reservadoagente;
for (int dia = 1; dia <= numeroDiasMes; dia++) {
Field field = cls.getDeclaredField("turnodia" + dia);
Method setter = cls.getMethod("setTurnodia" + dia, field.getType());
setter.setAccessible(true);
setter.invoke(obj, 3);
}
reservadoagenteList.add(reservadoagente);
}
Tenemos un entity llamado Reservadoagente que definimos con JMoordb
Deseamos asignar el valor de 3 a los atributos turnodia2 hasta turnodia3, para mostrar en un datatable como se muestra en el ejemplo:
Class[] paramInt = new Class[1];
paramInt[0] = Integer.TYPE;
for (Agente a : agenteList) {
Reservadoagente reservadoagente = new Reservadoagente();
reservadoagente.setAgente(a);
Class cls = reservadoagente.getClass();
Object obj = reservadoagente;
for (int dia = 1; dia <= numeroDiasMes; dia++) {
Field field = cls.getDeclaredField("turnodia" + dia);
Method setter = cls.getMethod("setTurnodia" + dia, field.getType());
setter.setAccessible(true);
setter.invoke(obj, 3);
}
reservadoagenteList.add(reservadoagente);
}
Comments
this subject. I like all the points you have made.