Estou tendo dificuldades com o model de uma JTable,estou fazendo alguma coisa errada,e minha JTable está aparecendo toda em branco,e gostaria de solicitar a ajuda de vcs,o que eu estou fazendo de errado?
Panel onde está minha JTable
package view;
import java.sql.*;
import java.util.ArrayList;
import javax.swing.*;
public class PanelConsulta extends JPanel {
public PanelConsulta() throws SQLException{
setLayout(null);
JTable table;
ArrayList dados = new ArrayList();
String[] colunas = new String[]{"valor do Gasto","Razão do Gasto","Data do Gasto","ID"};
Connection conexao = null;
ResultSet resultado = null;
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/sistema_gasto","root","");
String SQL = "SELECT * FROM gastos";
PreparedStatement stm = con.prepareStatement(SQL);
ResultSet rs = stm.executeQuery();
rs.first();
while(rs.next()){
dados.add(new Object[]{rs.getString("valor_gasto"),rs.getString("razao_gasto"),rs.getString("dia_gasto"),rs.getInt("id")});
}
ModeloTabela modelo = new ModeloTabela(dados,colunas);
table = new JTable();
table.setBounds(100,100,400,200);
add(table);
}
}
Classe da minha model
public class ModeloTabela extends AbstractTableModel {
private ArrayList linhas = null;
private String[] colunas = null;
public ModeloTabela(ArrayList lin,String[] col){
setLinhas(lin);
setColunas(col);
}
public ArrayList getLinhas(){
return linhas;
}
public void setLinhas(ArrayList dados){
linhas = dados;
}
public String[] getColunas(){
return colunas;
}
public void setColunas(String[] nomes){
colunas = nomes;
}
public int getColumnCount(){
return colunas.length;
}
public int getRowCount(){
return linhas.size();
}
public String getColumnName(int numCol){
return colunas[numCol];
}
public Object getValueAt(int numLin,int numCol){
Object[] linha = (Object[])getLinhas().get(numLin);
return linha[numCol];
}
}