Saca esa línea, tiene que quedarte así:
while(rs.next()) {
// asignas los datos al array data con sus castings respectivos
modelo.addRow(data);
}
System.
out.
println("Valor: "+e
+"\tTipo de dato: "+e.
getClass().
getName()); }
NOTA: Los flujos se cierran siempre en un finally, ya que así ocurra una excepción nos aseguramos que la conexión se haya cerrado.
try {
// conexion a db y demas
finally { if(conexion != null) conexion.close(); }
Pega lo que imprime, para saber si se está guardando la información de la tabla en el array con su correspondiente tipo de dato. Salu2.
PD: Si le pasas por parámetro el modelo de la tabla, ¿para qué la devuelves nuevamente? ¿Estás haciendo algo así no?
modelo = agregarFila(modelo);
tblDatos.setModel(modelo);
Pero no sería necesario. Acuérdate que en Java el paso es por referencia (tipo punteros en C++), por lo que solamente bastaría con un
agregarFila(modelo); y el cambio se reflejaría en el modelo. Ej.:
// aqui el paso es por referencia por lo que solo basta hacer esto
this.agregarFila(modelo); // y se agrega la fila al modelo.