ResultSet & JTable
Autor: Luciano | Categoría: Java, Programación
Basado en el tutorial Meter un ResultSet en un JTable veremos muy brevemente como hacerlo, destacando las principales líneas del código.

- En primera instancia nos conectamos a la BD y ejecutamos la consulta SQL que nos llenará el ResultSet
DriverManager.
registerDriver(new com.
mysql.
jdbc.
Driver());
//Reemplazar localhost, prueba, usuario y clave por los host de la base de datos, nombre de esquema, user y pass.
Connection conexion =
DriverManager.
getConnection("jdbc:mysql://localhost/prueba",
"usuario",
"clave");
Statement s = conexion.createStatement();
ResultSet rs = s.executeQuery("select * from persona");
- Crear un JTable, pasando como parámetro un DefaultTableModel
- Nos queda resolver como llenar el DefaultTableModel. Básicamente, la forma es esta:
// Creamos las columnas.
modelo.
addColumn("id");
modelo.
addColumn("nombre");
modelo.
addColumn("nacimiento");
// Bucle para cada resultado en la consulta
while (rs.next()) {
// Se crea un array que será una de las filas de la tabla.
Object [] fila = new Object[3]; // Hay tres columnas en la tabla
// Se rellena cada posición del array con una de las columnas de la tabla en base de datos.
for (int i=0;i<3;i++)
fila[i] = rs.getObject(i+1); // El primer indice en rs es el 1, no el cero, por eso se suma 1.
// Se añade al modelo la fila completa.
modelo.addRow(fila);
}
- Una alternativa propuesta en el tutorial es crear una clase ConversorResultSetADefaultTableModel (puedes optar por un nombre más corto
) que haciendo uso del atributo ResultSetMetaData del ResultSet pueda obtener la metadata de las columnas seleccionadas. De esta forma, nos independizamos de la consulta que se realice y el número de filas y columnas devueltas.
10 Respuestas para "ResultSet & JTable"
Hoye, que bien, es un buen tutorial asi por decirlo, da grandes ideas para hacer otras cosas.
Talves te animarias hacerlo con JTable, también insertar un regsitro desde un text Fields, y nostralo en JTable.
Saludo ………..
Si, está bueno como comienzo… obviamente, el próximo paso es hacer un pequeño ABM.
Hola tengo una duda y un problemilla estoy haciendo un programita en java, me conecto a la base de datos de mysql aqui el problema es como puedo hacer para saber si la sentencia trae datos no?
Oye buenisimo me ayudo no tienes idea me aclaro algunas dudas y sobre todo me salio mi tabla buenisimo gracias
una pregunta, esto en ke parte del codigo se mete????
dentro del jTable o en donde?
Oe yo lo implemente con la clase que generaliza el JTable pero el problema es q demora mucho en reportar los datos, son aprox 10000 registros, es lento debido al num d reg o es q habre hecho algo mal?
Hola, esta muy bien explicado y si me sirvio mucho asi k muchas grax por la ayuda.
muchisimas gracias que sencillo pero efectivo….. me sirvio mucho
buenisimo me sirvio mucho, pero tengo una duda como hago si kiero agregar datos desde una tabla y que se pueda guardar en una base de datos. gracias
mire el mismo mas detallado si no entendio este ………………….http://pshycodelic.blogspot.com/2009/03/meter-un-resultset-en-jtable.html
Comentarios: