Após INSERT incluir a linha no jtable

Galera fiz a rotina de gravar e criar a tabela, só que não to conseguindo assim que clicar no botão gravar ele inserir a linha automatico no jtable, no botao excluir consigo ele some automatico. segue o codigo pra alguem tentar ajudar


private void btSalvarActionPerformed(java.awt.event.ActionEvent evt) {
        if (txtMaquina.getText().isEmpty()) {
            JOptionPane.showMessageDialog(null, "Preencha os campos corretamente");
        } else {
            try {
                Class.forName("org.postgresql.Driver").newInstance();
                Connection conn = DriverManager.getConnection("jdbc:postgresql://localhost:5432/falhas?user=postgres&password=mysenha");

                String sqlinsert = "INSERT INTO tbl_pc(codPc, nomePc, setorPc, ipPc,"
                        + "teamPc, senhaTeamPc, perfilPc, memoriaPc, hdPc,"
                        + "processadorp, marcaPc, modeloPc, portasPc) VALUES ('"
                        + txtMaquina.getText().toUpperCase() + "','"
                        + txtNomeMaquina.getText().toUpperCase() + "','"
                        + cbSetor.getSelectedItem() + "','"
                        + txtIp.getText().toUpperCase() + "','"
                        + txtTeamView.getText().toUpperCase() + "','"
                        + txtSenha.getText().toUpperCase() + "','"
                        + cbPerfil.getSelectedItem() + "','"
                        + txtMemoria.getText().toUpperCase() + "','"
                        + txtHd.getText().toUpperCase() + "','"
                        + txtProcessador.getText().toUpperCase() + "','"
                        + txtMarca.getText().toUpperCase() + "','"
                        + txtModelo.getText().toUpperCase() + "','"
                        + txtPortas.getText().toUpperCase() + "')";

                conn.createStatement().executeUpdate(sqlinsert);
//tentei colocar aqui e nao deu certo
               // tabela.setModel(modelo);

            } catch (Exception e) {
                JOptionPane.showMessageDialog(null, "Erro!!! Dados não gravados. Motivo:\nCÓDIGO JÁ EXISTENTE " + e);
               
            }

        }
       //ai coloquei aqui no final do codigo
     tabela.setModel(modelo);
    }

e agora segue o codigo que monta minha tabela


       public boolean isCellEditable(int rowIndex, int colIndex) {
                //Se a coluna for menor que zero ele deixa editar.   
                if (colIndex < 0) {
                    return true;
                } else {
                    return false;
                }
            }
        };


        //Definindo a seleção de apenas uma linha no Jtable   
        tabela.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
        // Cria duas colunas
        modelo.addColumn("Cód. PC");
        modelo.addColumn("Nome");
        modelo.addColumn("Setor");
        modelo.addColumn("I.P.");
        modelo.addColumn("Team View");
        modelo.addColumn("Senha T.V.");
        modelo.addColumn("Perfil");
        modelo.addColumn("Memória");
        modelo.addColumn("HD");
        modelo.addColumn("Processador");
        modelo.addColumn("Marca");
        modelo.addColumn("Modelo");
        modelo.addColumn("Portas");



        // exibe os dados da tabela 
        try {
            Class.forName("org.postgresql.Driver").newInstance();
            Connection conn = DriverManager.getConnection("jdbc:postgresql://localhost:5432/falhas?user=postgres&password=mysenha");

            // procedimentos para obter os dados de uma tabela
            Statement stmt = conn.createStatement();
            String query = "SELECT * FROM tbl_pc";
            ResultSet rs = stmt.executeQuery(query);

            //estou lendo o resultset com todos os campos da tabela no banco
            while (rs.next()) {
                String codPc = rs.getString("codPc");
                String nomePc = rs.getString("nomePc");
                String setorPc = rs.getString("setorPc");
                String ipPc = rs.getString("ipPc");
                String teamPc = rs.getString("teamPc");
                String senhaTeamPc = rs.getString("senhaTeamPc");
                String perfilPc = rs.getString("perfilPc");
                String memoriaPc = rs.getString("memoriaPc");
                String hdPc = rs.getString("hdPc");
                String processadorPc = rs.getString("processadorP");
                String marcaPc = rs.getString("marcaPc");
                String modeloPc = rs.getString("modeloPc");
                String portasPc = rs.getString("portasPc");




                //Adicionando as linhas com as variaveis criadas acima
                modelo.addRow(new Object[]{codPc, nomePc, setorPc, ipPc, teamPc, senhaTeamPc, perfilPc, memoriaPc, hdPc, processadorPc, marcaPc, modeloPc, portasPc});
            }

            // fim procedimento para obter os dados
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, "SQLException: " + ex.getMessage());
            JOptionPane.showMessageDialog(null, "SQLState: " + ex.getSQLState());
            JOptionPane.showMessageDialog(null, "VendorError: " + ex.getErrorCode());
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "Problemas ao tentar conectar com o banco de dados");
        }
        // fim postgres

        //criando a tabela e dando o tamanho dela
        tabela.setPreferredScrollableViewportSize(new Dimension(600, 200));


        //a variavel p..é o JPanel que eu arrastei la no projeto, ai simplesmente eu dei o layout  e joguei tudo dentro
        p.setLayout(new FlowLayout());
        JScrollPane scrollPane = new JScrollPane(tabela);
        p.add(scrollPane);


        tabela.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
        scrollPane.setHorizontalScrollBar(new JScrollBar(0));
        tabela.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);


        tabela.getColumnModel().getColumn(0).setPreferredWidth(200);
        tabela.getColumnModel().getColumn(0).setResizable(false);
       
    }

alguém da uma luz, vou colcoar aqui o codigo que eu uso pra excluir do banco e da tabela ao mesmo tempo
aqui ta funfando

private void btExcluirActionPerformed(java.awt.event.ActionEvent evt) {
        if (tabela.getSelectedRow() != -1) {
            int linha = tabela.getSelectedRow();
            try {

                Class.forName("org.postgresql.Driver");
                Connection conn = DriverManager.getConnection("jdbc:postgresql://localhost:5432/falhas?user=postgres&password=mysenha");
                Statement stm = (Statement) conn.createStatement();
                String sql = null;


                String nome = "Deletar o computador com o código: " + tabela.getValueAt(linha, 0).toString() + " ?";
                int opcao_escolhida = JOptionPane.showConfirmDialog(null, nome, "Exclusão ", JOptionPane.YES_NO_OPTION);
                if (opcao_escolhida == JOptionPane.YES_OPTION) {
                    sql = "select * from tbl_pc Where codpc = " + (tabela.getValueAt(linha, 0));
                    int conseguiu_excluir = stm.executeUpdate("DELETE FROM tbl_pc  WHERE codpc='" + (tabela.getValueAt(linha, 0).toString()) + "'");

                    if (conseguiu_excluir == 1) {
                        modelo.removeRow(linha);
                        tabela.setModel(modelo);
                        JOptionPane.showMessageDialog(null, "Registro excluido com sucesso!!!");
                    }
                }
            } catch (SQLException e) {
                JOptionPane.showMessageDialog(null, "Erro a tentar excluir o registro..." + e);
            } catch (ClassNotFoundException e) {
            }
        } else {
            JOptionPane.showMessageDialog(null, "Selecione um nome para excluir");
        }

    }

Olá,

Você teria que executar o comando modelo.addRow(…) na linha 28 do seu código fonte onde diz: “//tentei colocar aqui e nao deu certo”
No método addRow(…) você deve passar os mesmos valores usados no comando insert.

até

[quote=agosti]Olá,

Você teria que executar o comando modelo.addRow(…) na linha 28 do seu código fonte onde diz: “//tentei colocar aqui e nao deu certo”
No método addRow(…) você deve passar os mesmos valores usados no comando insert.

até[/quote]

como assim miguxo pode me da um exemplo

Exemplo:

modelo.addRow(new Object[]{txtMaquina.getText().toUpperCase(), txtNomeMaquina.getText().toUpperCase(), cbSetor.getSelectedItem(), txtIp.getText().toUpperCase(), txtTeamView.getText().toUpperCase(), txtSenha.getText().toUpperCase(), cbPerfil.getSelectedItem(), txtMemoria.getText().toUpperCase(), txtHd.getText().toUpperCase(), txtProcessador.getText().toUpperCase(), txtMarca.getText().toUpperCase(), txtModelo.getText().toUpperCase(), txtPortas.getText().toUpperCase()});

att

[quote=agosti]Exemplo:

modelo.addRow(new Object[]{txtMaquina.getText().toUpperCase(), txtNomeMaquina.getText().toUpperCase(), cbSetor.getSelectedItem(), txtIp.getText().toUpperCase(), txtTeamView.getText().toUpperCase(), txtSenha.getText().toUpperCase(), cbPerfil.getSelectedItem(), txtMemoria.getText().toUpperCase(), txtHd.getText().toUpperCase(), txtProcessador.getText().toUpperCase(), txtMarca.getText().toUpperCase(), txtModelo.getText().toUpperCase(), txtPortas.getText().toUpperCase()});

att[/quote]

caraca da zero pra mim…obrigadao amigo…ja tentei de tudo menos o correto pra variar…muito obrigado cara