Salve, vorrei sapere come estrarre tutti i dati presenti in una tabella su grafica con un semplicemente comando senza aggiungere delle Jtextfield.
Cioè vorrei che mi costruisce in automatico una tabella contente tutti i dati della tabella.
Salve, vorrei sapere come estrarre tutti i dati presenti in una tabella su grafica con un semplicemente comando senza aggiungere delle Jtextfield.
Cioè vorrei che mi costruisce in automatico una tabella contente tutti i dati della tabella.
Ti serve JTable, nel cui model caricherai i dati ottenuti dalla tua SELECT.
Non è una cosa automatica ovviamente.
SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
Di questo libro e degli altri (blog personale di recensioni libri) | NO M.P. TECNICI
Innanzitutto executeQuery ti fornisce un ResultSet che rappresenta un insieme di righe come risultato della query eseguita. Il ResultSet lo si scorre per prendere tutte le righe, tipicamente in avanti con un ciclo while che sfrutta il next() del ResultSet.
Per ogni record devi prendere i dati delle colonne risultanti dalla select. Qui devi decidere tu se fare una estrazione specifica oppure generica. Cioè se ti aspetti e sai quante colonne ci sono, quali nomi hanno, che tipo hanno, ecc... oppure se vuoi fare qualcosa di generico che andrebbe bene per più select, andando a prendere i "meta" dati del ResultSet, cioè le informazioni sui dati delle colonne.
Ora passiamo a JTable. Esso si basa su un "table model" che è la entità (oggetto) che contiene ed "espone" i dati verso la tabella (o chiunque altro che ne abbia bisogno). Questo è un argomento abbastanza complesso. Un table model è rappresentato dalla interfaccia TableModel. Esiste una implementazione predefinita che è DefaultTableModel, che ha una struttura molto generica fatta da un Vector di Vector di Object. Ma di table model se ne possono implementare anche di "custom", personalizzati, tipicamente estendendo AbstractTableModel.
Il punto è la scelta del table model che dipende da che cosa hai "in mano" per rappresentare le righe. Se hai fatto una estrazione specifica su una tabella PERSONA, potresti creare oggetti di classe Persona con le varie proprietà popolate con i valori delle colonne. Se alla fine dello scorrimento sul ResultSet hai es. un List<Persona> o un Persona[], questi non li puoi usare con es. DefaultTableModel, perché DefaultTableModel ha una struttura meno tipizzata e più generica. Dovresti implementare un tuo table model apposito.
Se invece gestisci per le righe es. un Object[] o un Vector<Object>, insomma più vicini al concetto di DefaultTableModel, allora questo puoi usarlo.
Comunque, se non hai mai usato JTable/table model il consiglio è di non partire in quarta .... e invece di documentarti bene ad esempio con il tutorial ufficiale: How to Use Tables.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Salve, sono riuscito a scorrere la lista della seguente query ("SELECT*FROM NOMETABELLA");
il problema e che usando;codice:JTable table = new JTable(data, columnNames);
la colonna sono riuscito a passarla mentre la data non riesco a passarla
Come posso passare ogni elemento astratto dalla query a Object[][]?codice:while(rs.next()){ String Nome2 = rs.getString("");
Allora io voglio sapere come si crea una tabella e visualizzarla su una finestra
;codice:JTable table = new JTable(data, nomecolonna); JScrollPane scrollPane = new JScrollPane(table); table.setFillsViewportHeight(true); DefaultTableModel model = new DefaultTableModel(data, nomecolonna);
Ho capito come si crea JTable ma non capisco come si aggiunge e visualizzare su finestra.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Allora sono riuscito ad far aprire la tabella.
Ora voglio sapere come inserire i valori
Ora voglio sapere come inserire ogni nome e cognome nella tabellacodice:while (rs.next()) { String Nome2=rs.getString("Nome"); String Cognome=rs.getString("Cognome"); System.out.println("Nome"+Nome2); System.out.println("Cognome"+Cognome); String nomecolonna[]={"Nome","Cognome"}; Object [][]data = { {Nome2 },{Cognome} };
Salve, scusate ancora
[CODE]
table.setModel(model);
Schermata 2014-04-05 alle 18.01.55.jpgSchermata 2014-04-05 alle 18.01.55.jpg
Allora ho capito come si inserisce la tabella con i nomi delle colonne.
Ora cliccando su model. mi si apre un menu(come da allegato) ma non riesco a capire come aggiungere ciascun Nome e Cognome che scorre nel ciclo whilecodice:DefaultTableModel model = new DefaultTableModel(); JTable table = new JTable(data, nomecolonna); table.setModel(model);
codice:while (rs.next()) { String Nome2=rs.getString("Nome"); String Cognome=rs.getString("Cognome"); System.out.println("Nome"+Nome2); System.out.println("Cognome"+Cognome); String nomecolonna[]={"Nome","Cognome"}; jf.nomecolonna=nomecolonna; Object [][]data = { {Nome2 },{Cognome} }; jf.data=data;