Sou iniciante em Java e estou fazendo um sistema de cadastro de produto ate então ja consegui fazer toda a parte de cadastro e conexão com o banco de dados, mas agora estou com a seguinte duvida em relação a jtable aonde eu quero colocar todos os dados do banco de dados e exibir em uma tabela (jtable), abaixo o codigo:
import java.sql.SQLException;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
public class RelatorioProduto extends javax.swing.JFrame {
String produto = "select * from produto";
public RelatorioProduto() {
initComponents();
if (!BD.getConnection())
{
JOptionPane.showMessageDialog(null, "Falha na conexão, o sistema será fechado!");
System.exit(0);
}
}
@SuppressWarnings("unchecked")
private void btExibirActionPerformed(java.awt.event.ActionEvent evt) {
if (evt.getSource()==btExibir)
{
PreencherTabela();
}
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new RelatorioProduto().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JTable Consulta;
private javax.swing.JButton btExibir;
private javax.swing.JScrollPane jScrollPane1;
// End of variables declaration
public void PreencherTabela()
{
Consulta.getColumnModel().getColumn(0).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(1).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(2).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(3).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(4).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(5).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(6).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(7).setPreferredWidth(50);
String sql = ("SELECT * FROM produto ") ;
BD.setResultSet(sql);
DefaultTableModel modelo = (DefaultTableModel)Consulta.getModel();
modelo.setNumRows(0);
try
{
while (BD.resultSet.next())
modelo.addRow(new Object[] {BD.resultSet.getString("codigo"),BD.resultSet.getString("grupo"),BD.resultSet.getString("produto"),BD.resultSet.getString("datacompra"),BD.resultSet.getString("estoque"),BD.resultSet.getString("custo"),BD.resultSet.getString("codigo"),BD.resultSet.getString("venda"),BD.resultSet.getString("validade") });
BD.resultSet.first();
}
catch(SQLException erro) { }
erro.printStackTrace(System.err);
}
}
Este codigo Funciona normal, mas na hora que aperto o botão EXIBIR não aparece nada,
Abaixo segue o código do método:
public void PreencherTabela()
{
Consulta.getColumnModel().getColumn(0).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(1).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(2).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(3).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(4).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(5).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(6).setPreferredWidth(50);
Consulta.getColumnModel().getColumn(7).setPreferredWidth(50);
String sql = ("SELECT * FROM produto ") ;
BD.setResultSet(sql);
DefaultTableModel modelo = (DefaultTableModel)Consulta.getModel();
modelo.setNumRows(0);
try
{
while (BD.resultSet.next())
modelo.addRow(new Object[] {BD.resultSet.getString("codigo"),BD.resultSet.getString("grupo"),BD.resultSet.getString("produto"),BD.resultSet.getString("datacompra"),BD.resultSet.getString("estoque"),BD.resultSet.getString("custo"),BD.resultSet.getString("codigo"),BD.resultSet.getString("venda"),BD.resultSet.getString("validade") });
BD.resultSet.first();
}
catch(SQLException erro) { }
erro.printStackTrace(System.err);
}
Abaixo o codigo do botão EXIBIR:
private void btExibirActionPerformed(java.awt.event.ActionEvent evt) {
if (evt.getSource()==btExibir)
{
PreencherTabela();
}
}
Gostaria de saber aonde está o erro.
Só para lembrar uso o NETBEANS.