Atualizar registro de formulários

Galera, primeiramente quero agradecer às dicas.
Seguinte, tenho um formulário de cadastro onde coloquei os Botões NOVO, EXCLUIR, ALTERAR E SALVAR, além de botões de navegação (PROXIMO, ANTERIOR, ULTIMO E PRIMEIRO).
Pois bem, tudo parece estar funcionando normalmente, porem, percebi que ao fazer um novo cadastro, ou alterar, ou mesmo excluir…quando clico nos botões de navegação, parece não ter ocorrido qualquer alteração. Aí, fecho o formulário e abro de novo, aí sim tudo está atualizado.
O que há de errado ?

Coloco abaixo o código dos botões Salvar, Excluir e Alterar:

 try { 
      PreparedStatement pst = Conecta.conexao.prepareStatement("delete from estados where codigo_uf =?");
      pst.setString(1, codigo.getText());
    
               pst.execute();
              JOptionPane.showMessageDialog(null, "Exclusao realizada com sucesso");
    
       } catch (SQLException erro) {
     JOptionPane.showMessageDialog(null, "nao foi possivel");


try {
        PreparedStatement std = Conecta.conexao.prepareStatement("INSERT INTO estados (nome_uf, sigla_uf) VALUES ('"+nome.getText()+"','"+sigla.getText()+"')");
        std.executeUpdate();
        JOptionPane.showMessageDialog(null, "Gravação realizada com sucesso");

    } catch(SQLException erro) {
        JOptionPane.showMessageDialog(null, "Não foi possível realizar a Gravação!!!");

    }


try {
          conexaoBD Conecta = new conexaoBD();
          Conecta.conecta();
          String sql = "update estados set nome_uf=?, sigla_uf=? where codigo_uf=?";
          PreparedStatement pstm = Conecta.conexao.prepareStatement(sql);// Conecta.executeSQL("select * from usuarios");// where login="+usuario.getText()+"and senha="+senha.getText());
          pstm.setString(1, nome.getText());
          pstm.setString(2, sigla.getText());
          pstm.setInt(3, Integer.parseInt(codigo.getText()));
          pstm.execute();
          pstm.close();;
                     
         JOptionPane.showMessageDialog(null, "Alteração realizada com sucesso");
     } catch(SQLException erro) {
         JOptionPane.showMessageDialog(null, erro);

Se eu consegui entender, é porque a atualização está sendo feita apenas no banco de dados, deixando assim a aplicação “desatualizada”, precisando que você reabra a aplicação para obter os dados do banco e assim exibir as informações atualizadas.
Ao realizar qualquer uma das ações você dispara algo para atualizar as informações de exibição.

Mas como se faz isso ? Esta é dúvida

vc fez um *CRUD quase completo só faltou a letra R desse CRUD que é o Ready portanto falta apenas o select para vc poder retornar os registros a cada atualização

*(INSERT, SELECT, UPDATE, DELETE)

Pois é irmão, sou iniciante e não sei como se faz isso.

Pessoal, infelizmente não consegui. Tentei de varias formas.

Ao incluir, alterar ou excluir um cadastro, você precisa chamar a rotina que lista os cadastros novamente, imagino que você deve ter deixado esses botões em uma tabela (jtable imagino?) para assim selecionar um cadastro e alterar ou excluir certo?

Fiz assim:
try {
conexaoBD Conecta = new conexaoBD();
Conecta.conecta();
String sql = “update estados set nome_uf=?, sigla_uf=? where codigo_uf=?”;
PreparedStatement pstm = Conecta.conexao.prepareStatement(sql);// Conecta.executeSQL(“select * from usuarios”);// where login="+usuario.getText()+“and senha=”+senha.getText());
pstm.setString(1, nome.getText());
pstm.setString(2, sigla.getText());
pstm.setInt(3, Integer.parseInt(codigo.getText()));
pstm.execute();
JOptionPane.showMessageDialog(null, “Alteração realizada com sucesso”);
pstm.close();
Conecta.executeSQL(“Select * from estados”);
Conecta.resultset.first();
codigo.setText(String.valueOf(Conecta.resultset.getInt(“codigo_uf”)));
nome.setText(Conecta.resultset.getString(“nome_uf”));
sigla.setText(Conecta.resultset.getString(“sigla_uf”));
// pstm.close();;
preencherTabela(“select * from estados order by codigo_uf”);
try {
Conecta.executeSQL(“Select * from estados”);
Conecta.resultset.first();
codigo.setText(String.valueOf(Conecta.resultset.getInt(“codigo_uf”)));
nome.setText(Conecta.resultset.getString(“nome_uf”));
sigla.setText(Conecta.resultset.getString(“sigla_uf”));
} catch(SQLException erro) {
JOptionPane.showMessageDialog(null, “Dados não localizados!!”);
}

     } catch(SQLException erro) {
         JOptionPane.showMessageDialog(null, erro);
     }