Dúvida conceitual (CRUD)

Bom dia!
Sou iniciante em interface gráfica Java e pretendo fazer um formulário CRUD para aprender os conceitos básicos. Minha dúvida é como fazer a “ponte” entre os componentes da tela e o banco. Imaginando um cadastro de Clientes, pensei no seguinte (resumidamente):

Construtor da Janela que contem o formulário:

  1. Recuperar uma lista com todas as chaves primárias da tabela Cliente;
  2. Realizar novo Select desta vez utilizando o primeiro item da lista como parâmetro, assim popular o formulário ao abrir.

Navegar entre registros:

  1. Ao clicar no botão << ou >>, avançar ou retroceder na lista, e utilizar a posição atual como parâmetro para nova consulta no banco.
  2. Para as ações Excluir e Atualizar, utilizar a posição atual da lista como parâmetro.

Isso faz algum sentido? Existe uma forma mais bonita de fazer isto? :slight_smile:

Veja se dá uma luz!!!

Particulamente eu opto por fazer uma tela de Listagem(com opções de buscas de registros…não gosto de carregar todos registros e ficar paginando), e nessa existir as opçoes de ADD, EDIT, DELETE, SEARCH…

Obrigado pela resposta,
Então você não faria os controles de avançar e retroceder registros ? Mas sim uma opção de pesquisa no banco, ex: Nome de Cliente, Cidade, etc. ?

Isso mesmo, acredito ser desnecessário carregar um monte de coisa na tela, quando as vezes o usuário só quer as vendas do dia, por exemplo.

Valeu, isso facilita um pouco a lógica da tela, vou seguir a mesma ideia.

Um ponto relevante é saber em qual ambiente você está trabalhando, Web ou Desktop?
Não existe a maneira mais bonita de realizar esta operação, mas sim a modo mais funcional. Cada ambiente possui características específicas e estas podem ser exploradas de formas deferentes. (sob o ponto de vista da usabilidade).

Neste caso, é para Desktop. Pretendo substituir um programa que foi feito em Ms Access, onde os tais botões de navegação são criados facilmente. Mas é só questão do usuário adaptar-se.