Buenas, estoy tratando de cargar los datos de una base de datos llamada "proveedores" la cual contiene una tabla llamada "proveedor" y esa tiene los campos "nombre, cc_nit, ciudad, direccion, telefono1, telefono2" , este es el codigo.
package modulos;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.util.ArrayList;
import javax.swing.JFrame;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
public class LISTA_PROVEEDORES extends JFrame{
Connection cn;
PreparedStatement ps;
ResultSet rs;
ResultSetMetaData rsm;
DefaultTableModel dtm;
JTable tabla = new JTable(dtm);
public LISTA_PROVEEDORES(){
this.setVisible(true);
try {
Class.forName ("com.mysql.jdbc.Driver");
cn = DriverManager.getConnection("jdbc:mysql://localhost/PROVEEDORES","jolut", "123");
ps = cn.prepareStatement("select nombre, cc_nit, ciudad, direccion, telefono1, telefono2 from PROVEEDOR");
rs = ps.executeQuery();
rsm = rs.getMetaData();
ArrayList<Object[]> data = new ArrayList<>();
while (rs.next()){
Object[] rows= new Object[rsm.getColumnCount()];
for (int i=0 ; i<rows.length ; i++){
rows[i] = rs.getObject(i+1);
}
data.add(rows);
}
dtm = (DefaultTableModel) this.tabla.getModel();
for (int i=0 ; i<data.size() ; i++){
dtm.addRow(data.get(i));
}
}
catch (Exception e){
System.out.println("Error");
}
tabla.setModel(dtm);
this.add(tabla);
this.pack();
}
public static void main (String[] args){
LISTA_PROVEEDORES ventana = new LISTA_PROVEEDORES();
}
}
al ejecutarlo no me da errores pero no me sale la tabla en la pantalla, es mas, no me sale nada.
Que podria ser?