Salve, sono nuova e sono anche abbastanza inesperta su java, e chiedo perdono se sbaglio qualcosa nel postare.
Sono alle prese con un progetto per un esame all'università, ovvero una applicazione che gestisca il database di un centro sportivo.
Ho la classe
TesseratoDAO in cui ho costruito questo metodo per mostrare
tutti i tesserati presenti nel db:
public static ArrayList<Tesserato> showAllTesserati()
{
ArrayList<Tesserato> tesserati = new ArrayList<Tesserato>();
ArrayList<String[]> result = DbConnection.getInstance().executeQuery("SELECT * FROM tesserato");
Iterator<String[]> i = result.iterator();
while(i.hasNext())
{
String[] row = i.next();
Tesserato t = new Tesserato();
t.setMatricola(row[0]);
t.setNome(row[1]);
t.setCognome(row[2]);
t.setDataNascita(row[3]);
t.setIndirizzo(row[4]);
t.setCitta(row[5]);
t.setRecapito(row[6]);
tesserati.add(t);
}
if(tesserati.isEmpty() == true) { System.out.println("Non ci sono tesserati iscritti."); }
return tesserati;
}
Ora, dovrei mostrare il risultato della query in una finestra, che ho chiamato HomeFrame, per farlo ho scritto questo:
package progetto.centroSportivo.view;
import java.awt.*;
import java.io.File;
import java.util.ArrayList;
import javax.imageio.ImageIO;
import javax.swing.*;
import progetto.centroSportivo.view.Table;
import progetto.centroSportivo.model.Tesserato;
import progetto.centroSportivo.dao.*;
public class HomeFrame extends JFrame{
private JPanel northPanel = new JPanel();
private JTextField emailtxt;
private JPasswordField passwordtxt;
private JButton loginButton;
private JButton signupButton;
private JTable listTable;
private JPanel listPnl;
//private JTable listaDiscipline;
public HomeFrame(String title) throws HeadlessException
{
super(title);
setSize(600,600);
setLocation(400, 50);
setDefaultCloseOperation(EXIT_ON_CLOSE);
loginButton = new JButton("Accedi");
signupButton = new JButton("Registrati");
northPanel.setLayout(new FlowLayout());
northPanel.add(new JLabel("E-mail: "));
emailtxt = new JTextField(10);
northPanel.add(emailtxt);
northPanel.add(new JLabel("Password: "));
passwordtxt = new JPasswordField(10);
northPanel.add(passwordtxt);
northPanel.add(loginButton);
northPanel.add(signupButton);
getContentPane().add(northPanel, BorderLayout.NORTH);
ArrayList<Tesserato> listTesserati = new ArrayList<Tesserato>();
listTesserati = TesseratoDAO.showAllTesserati();
Table t = new Table(listTesserati);
listTable = new JTable(t);
listPnl = new JPanel();
listPnl.add(listTable);
getContentPane().add(listPnl);
}
}
Infine richiamo HomeFrame nella classe Launcher.java, il problema è che mostra solo il la parte in cui ci sono i due bottoni e le label, ma non mostra il risultato della query.
Qualcuno saprebbe indicarmi quali errori sto commettendo? Ed eventualmente aiutarmi?
Vi ringrazio in anticipo