hai ragione...scusa ma era tardi e sono andato a dormire 
eccola:
codice:
ResultSet rs = cmd.executeQuery(qry);
ResultSetMetaData rsMeta = rs.getMetaData();
int nColonne = rsMeta.getColumnCount();
Vector nomeColonne = new Vector();
for (int nr=1; nr<=nColonne; nr++)
nomeColonne.add(rsMeta.getColumnName(nr));
Vector datiRighe = new Vector();
while (rs.next()){
Vector riga = new Vector();
for (int nr=1; nr<=nColonne; nr++) {
riga.add(rs.getObject(nr));
}
datiRighe.add(riga);
}
creaJTable(datiRighe,nomeColonne); // creo JFrame con JTable
e qui creo il JFrame con la JTable
codice:
private JFrame creaJTable(Vector righe, Vector colonne) {
JTable table = new JTable(righe,colonne) { //sovrascrive il metodo is CellEditable impostando la JTable
@Override public boolean isCellEditable(int row, int column) { // non modificabile
return false;
}
};
JScrollPane scroller = new JScrollPane(table);
JFrame tableFrame = new JFrame("Tabella Risultante");
tableFrame.add(scroller);
tableFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
tableFrame.setLocation(220,150);
tableFrame.pack();
tableFrame.setVisible(true);
return tableFrame;
}
Ciao