@moisesdcruz escreveu:
Tenho uma JTable onde quero listar a pesquisa de todos os grupos cadastrados no banco de dados nela. Criei a JTable com o evento do botao pesquisa mas nao me retorna nada e nem apresenta aviso de error.
Segue imagem e codigo abaixo:classe de cadastro de grupos:
package gui; import dao.GruposDAO; import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFormattedTextField; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.SwingConstants; import static javax.swing.SwingConstants.BOTTOM; import static javax.swing.SwingConstants.CENTER; import static javax.swing.SwingConstants.TOP; import javax.swing.border.TitledBorder; import javax.swing.table.DefaultTableCellRenderer; import javax.swing.table.DefaultTableModel; //import javax.swing.table.TableModel; import modelo.Grupos; /** * * @author Moises */ public class CadastrarGrupo extends JPanel{ private JPanel pnPrincipal, pnTabela; private JLabel lbCodigo, lbGrupo; private JFormattedTextField tfGrupo, tfCodigo; private JButton btGravar, btAlterar, btBuscar, btExcluir; private JScrollPane sp; private JTable tbTabela; private GruposDAO grupos; public CadastrarGrupo(){ inicializarComponentes(); definirEventos(); } //Declaracao do componentes da janela. private void inicializarComponentes() { String userName = System.getProperty("user.home"); setLayout(null); setBounds(20, 10, 690, 600); lbCodigo = new JLabel("Código:"); lbGrupo = new JLabel("Grupo:"); tfGrupo = new JFormattedTextField(); tfCodigo = new JFormattedTextField(); btGravar = new JButton(); btGravar.setIcon(new ImageIcon(userName+"/Documents/NetBeansProjects/Estoki/imagem/gravar.png")); btGravar.setHorizontalTextPosition(CENTER); btGravar.setVerticalAlignment(TOP); btGravar.setVerticalTextPosition(BOTTOM); btAlterar = new JButton(); btAlterar.setIcon(new ImageIcon(userName+"/Documents/NetBeansProjects/Estoki/imagem/alterar.png")); btAlterar.setHorizontalTextPosition(CENTER); btAlterar.setVerticalAlignment(TOP); btAlterar.setVerticalTextPosition(BOTTOM); btBuscar = new JButton(); btBuscar.setIcon(new ImageIcon(userName+"/Documents/NetBeansProjects/Estoki/imagem/buscar.png")); btBuscar.setHorizontalTextPosition(CENTER); btBuscar.setVerticalAlignment(TOP); btBuscar.setVerticalTextPosition(BOTTOM); btExcluir = new JButton(); btExcluir.setIcon(new ImageIcon(userName+"/Documents/NetBeansProjects/Estoki/imagem/excluir.png")); btExcluir.setHorizontalTextPosition(CENTER); btExcluir.setVerticalAlignment(TOP); btExcluir.setVerticalTextPosition(BOTTOM); lbCodigo.setBounds(10, 10, 42, 20); tfCodigo.setBounds(58, 10, 42, 20); lbGrupo.setBounds(110, 10, 40, 20); tfGrupo.setBounds(153, 10, 200, 20); btGravar.setBounds(20, 60, 30, 30); btAlterar.setBounds(60, 60, 30, 30); btBuscar.setBounds(100, 60, 30, 30); btExcluir.setBounds(140, 60, 30, 30); pnPrincipal = new JPanel(); pnPrincipal.setLayout(null); pnPrincipal.setBounds(0, 0, 680, 480); pnPrincipal.add(lbCodigo); pnPrincipal.add(tfCodigo); pnPrincipal.add(lbGrupo); pnPrincipal.add(tfGrupo); pnPrincipal.add(btGravar); pnPrincipal.add(btAlterar); pnPrincipal.add(btBuscar); pnPrincipal.add(btExcluir); grupos = new GruposDAO(); if(!grupos.bd.geteConnection()){ JOptionPane.showMessageDialog(null, "Falha na conexao, o sistema sera fechado!"); System.exit(0); } pnTabela = new JPanel(new BorderLayout()); pnTabela.setBorder(new TitledBorder("Grupos")); sp = new JScrollPane(); DefaultTableModel tableModel = new DefaultTableModel( new String[] {"Código","Grupo"},0){ public boolean isCellEdtable(int row,int col){ if(col == 2){ return false; } return true; } }; tbTabela = new JTable(tableModel); DefaultTableCellRenderer alinhaDireita; alinhaDireita = new DefaultTableCellRenderer(); alinhaDireita.setHorizontalAlignment(SwingConstants.RIGHT); tbTabela.getColumnModel().getColumn(0).setResizable(false); tbTabela.getColumnModel().getColumn(0).setPreferredWidth(30); tbTabela.getColumnModel().getColumn(1).setResizable(false); tbTabela.getColumnModel().getColumn(1).setPreferredWidth(170); tbTabela.getColumnModel().getColumn(1).setCellRenderer(alinhaDireita); tbTabela.getTableHeader().setReorderingAllowed(false); sp.setViewportView(tbTabela); pnTabela.add(sp); pnTabela.setBounds(10, 100, 650, 230); pnPrincipal.add(pnTabela); add(pnPrincipal); } private void definirEventos() { btGravar.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent ae) { if(tfCodigo.getText().equals("")||tfGrupo.getText().equals("")){ JOptionPane.showMessageDialog(null, "Preencha todos os campos!","AVISO", JOptionPane.INFORMATION_MESSAGE); return; }else{ grupos.grupo.setCodigo(tfCodigo.getText()); grupos.grupo.setGrupo(tfGrupo.getText()); JOptionPane.showMessageDialog(null, grupos.atualizar(GruposDAO.INCLUSAO)); limparCampos(); } } }); btBuscar.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent ae) { String grupo = tfGrupo.getText(); if(!grupo.equals("")){ buscarGrupo(); } } private void buscarGrupo() { DefaultTableModel tableModel = (DefaultTableModel) tbTabela.getModel(); GruposDAO grupdao = new GruposDAO(); for(Grupos p: grupdao.buscarTodos()){ tableModel.addRow(new Object[]{ grupos.grupo.getCodigo(), grupos.grupo.getGrupo() }); } } }); } private void limparCampos() { tfCodigo.setText(""); tfGrupo.setText(""); } } classe DAO: package dao; import bd.BD; //import gui.CadastrarGrupo; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; import modelo.Grupos; /** * * @author Moises */ public class GruposDAO { public Grupos grupo; public BD bd; private PreparedStatement statement; private ResultSet resultSet = null; private String men, sql; public static final byte INCLUSAO = 1; public static final byte ALTERACAO = 2; public static final byte EXCLUSAO = 3; public GruposDAO(){ bd = new BD(); grupo = new Grupos(); } public Object atualizar(int operacao) { men = "Operacao realizada com sucesso!"; try{ if(operacao==INCLUSAO){ sql = "insert into tb_grupos (cod_grupo, grupo) values(?,?)"; statement = bd.connection.prepareStatement(sql); statement.setString(1, grupo.getCodigo()); statement.setString(2, grupo.getGrupo()); } if(statement.executeUpdate()==0) men = "Falha na operecao!"; } catch(SQLException erro){ men = "Falha na operacao "+ erro.toString(); } return men; } public List<Grupos> buscarTodos(){ //criado a lista grupos. List<Grupos> grupos = new ArrayList<Grupos>(); try{ sql = "select * from tb_grupos"; statement = bd.connection.prepareStatement(sql); //resultset vai receber a pesquisa do a pesquisa do executequery. resultSet = statement.executeQuery(); while(resultSet.next()){ resultSet.first(); //Instanciando o objeto grupo. Grupos grupo = new Grupos(); //Objeto grupo receber a pesquisas do resultset. grupo.setCodigo(resultSet.getString("cod_grupo")); grupo.setGrupo(resultSet.getString("grupo")); grupos.add(grupo); } } catch (SQLException ex) { ex.printStackTrace(); Logger.getLogger(GruposDAO.class.getName()).log(Level.SEVERE, null, ex); } return grupos; } }
Mensagens: 4
Participantes: 3