Problemas con la clase vector
Publicado por nepthis (37 intervenciones) el 13/06/2007 19:13:36
Hola a todos! Tengo un error en una serie de bucles anidados. A mi me parece todo muy claro y perfecto, he puesto mensajes para ver por donde va la ejecuación y todo parece correcto. Mi objetivo es, recorrer un vector de códigos de profesor, por cada uno de ellos acceder a la base de datos, obtener todos los datos de ese profesor y anadirlo a otro vector. El problema es que cada vez que añado un nuevo profesor, repite todos los anteriores y no sé por qué es. Muchas gracias por vuestro tiempo. Espero que entendais el código:
Collection prof = asignaturas.getTodosProfesoresAsig(cod_asignatura);
// aqui obtengo todos los códigos de los profesores que imparten una determinada asignatura.
Vector listaProfesores = new Vector ();
Vector lista_codigos_profesor = new Vector ();
Profesor profesor = new Profesor ();
if (prof.size () > 0) // paso el contendio de la collección a un vector
{
for (Iterator iterator = prof.iterator(); iterator.hasNext(); )
{
profesor = (Profesor) iterator.next ();
String cod_prof=String.valueOf(profesor.getCod_profesor());
lista_codigos_profesor.addElement(cod_prof);
}
// HASTA AQUI FUNCIONA PERFECTAMENTE
if (lista_codigos_profesor.size () > 0)
{
for(int j=0; j<lista_codigos_profesor.size(); j=j+1)
{
String codigo_profesor= (String) lista_codigos_profesor.elementAt(j);
int c_prof = Integer.parseInt(codigo_profesor);
Collection coleccion_profesores = null;
coleccion_profesores = profesores.getProfesor(c_prof);
if (coleccion_profesores.size () > 0)
{
for (Iterator iterator = coleccion_profesores.iterator(); iterator.hasNext(); )
{
profesor = (Profesor) iterator.next ();
String cod_profesor=String.valueOf(profesor.getCod_profesor());
listaProfesores.addElement(cod_profesor);
listaProfesores.addElement(profesor.getNombre());
listaProfesores.addElement(profesor.getAp1());
listaProfesores.addElement(profesor.getAp2());
listaProfesores.addElement(profesor.getDespacho());
listaProfesores.addElement(profesor.getTelefono());
listaProfesores.addElement(profesor.getFax());
listaProfesores.addElement(profesor.getMail());
listaProfesores.addElement(profesor.getwww());
}
}
}
}
}
Collection prof = asignaturas.getTodosProfesoresAsig(cod_asignatura);
// aqui obtengo todos los códigos de los profesores que imparten una determinada asignatura.
Vector listaProfesores = new Vector ();
Vector lista_codigos_profesor = new Vector ();
Profesor profesor = new Profesor ();
if (prof.size () > 0) // paso el contendio de la collección a un vector
{
for (Iterator iterator = prof.iterator(); iterator.hasNext(); )
{
profesor = (Profesor) iterator.next ();
String cod_prof=String.valueOf(profesor.getCod_profesor());
lista_codigos_profesor.addElement(cod_prof);
}
// HASTA AQUI FUNCIONA PERFECTAMENTE
if (lista_codigos_profesor.size () > 0)
{
for(int j=0; j<lista_codigos_profesor.size(); j=j+1)
{
String codigo_profesor= (String) lista_codigos_profesor.elementAt(j);
int c_prof = Integer.parseInt(codigo_profesor);
Collection coleccion_profesores = null;
coleccion_profesores = profesores.getProfesor(c_prof);
if (coleccion_profesores.size () > 0)
{
for (Iterator iterator = coleccion_profesores.iterator(); iterator.hasNext(); )
{
profesor = (Profesor) iterator.next ();
String cod_profesor=String.valueOf(profesor.getCod_profesor());
listaProfesores.addElement(cod_profesor);
listaProfesores.addElement(profesor.getNombre());
listaProfesores.addElement(profesor.getAp1());
listaProfesores.addElement(profesor.getAp2());
listaProfesores.addElement(profesor.getDespacho());
listaProfesores.addElement(profesor.getTelefono());
listaProfesores.addElement(profesor.getFax());
listaProfesores.addElement(profesor.getMail());
listaProfesores.addElement(profesor.getwww());
}
}
}
}
}
Valora esta pregunta


0