Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/06/2010, 13:36
Myless
 
Fecha de Ingreso: enero-2010
Mensajes: 88
Antigüedad: 14 años, 4 meses
Puntos: 2
Ayuda con JTable y MySQL

Hola, estoy intentando mostrar los resultados de una consulta en una JTable, pero no puedo. Miren, esto es lo que tengo:

La Tabla:
Código PHP:
CREATE TABLE PASAJERO (
    
nPasaje int Auto_Increment Primary Key NOT NULL,
    
nombre char(24NOT NULL,
    
apellido char(24NOT NULL,
    
edad int NOT NULL,
    
rut char(12NOT NULL,
    
nContacto char(12NOT NULL,
    
origen char(28NOT NULL,
    
destino char(28NOT NULL
); 
En la clase DAO tengo este metodo:
Código PHP:
public List<PasajerogetListaPasajeros()
    {
        try
        {
            
String sql "SELECT * FROM PASAJERO";
            
Statement sentencia conexion.createStatement();
            
ResultSet rs sentencia.executeQuery(sql);

            List<
PasajerolistaPasajero = new ArrayList<Pasajero>();
            
Pasajero aux null;

            while( 
rs.next() )
            {
                
aux cargarPasajero(rs);
                
listaPasajero.add(aux);
            }
            return 
listaPasajero;
            }
        catch(
SQLException e)
        {
            
System.err.println("Se profujo una falla al consultar en la BD");
            
e.printStackTrace();
            return 
null;
        }
    }

    private 
Pasajero cargarPasajero (ResultSet rsthrows SQLException
    
{
        
Pasajero encontrado = new Pasajero();
        
encontrado.setnPasaje(rs.getInt("nPasaje"));
        
encontrado.setNombre(rs.getString("Nombre"));
        
encontrado.setApellido(rs.getString("Apellido"));
        
encontrado.setEdad(rs.getInt("Edad"));
        
encontrado.setRut(rs.getString("Rut"));
        
encontrado.setnContacto(rs.getString("NContacto"));
        
encontrado.setOrigen(rs.getString("Origen"));
        
encontrado.setDestino(rs.getString("Destino"));
        return 
encontrado;

    } 
Y ps, en el MAIN:
Código PHP:
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class 
VentanaPrincipal extends JFrame{
    private 
JTable grilla;
    private 
ModeloGrilla modelo;
    private 
DAO d;

    public 
VentanaPrincipal() {
        
super("Grilla Simple");
        
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
inicializarComponentes();
        
this.pack();
        
this.setVisible(true);
    }

    private 
void inicializarComponentes(){
        
Container contentPane this.getContentPane();
        
contentPane.setLayout(new BorderLayout());
        
ArrayList<Pasajerolista generarLista();
        
modelo = new ModeloGrilla(lista);
        
grilla = new JTable(modelo);
        
JScrollPane scroller = new JScrollPane(grilla);
        
contentPane.add(scrollerBorderLayout.CENTER);
    }

    private 
ArrayList<PasajerogenerarLista() {
        
ArrayList<Pasajerolista = new ArrayList<Pasajero>();
        
Pasajero libro1 = new Pasajero(new Integer(12), "Prueba""Prueba", new Integer(28), "Prueba""Prueba""Prueba""Prueba");
        
lista.add(libro1);
        
Pasajero libro2 = new Pasajero(new Integer(28), "Prueba""Prueba", new Integer(12), "Prueba""Prueba""Prueba""Prueba");
        
lista.add(libro2);
        return 
lista;
    }

Hasta ahi, puedo hacer que la JTable muestre datos en duro... pero no se como pasar la lista que me devuelve el metodo en el dao, a algo que la JTable pueda mostrar.

Ayuda please!