Como usar um JComboBox (botão de combinação) com banco de dados no NetBeans


Como usar um JComboBox (botão de combinação) com banco de dados no NetBeans

Olá pessoal neste post mostrarei pra vocês como usar o JcomboBox ou caixa de seleção em uma aplicação para listar um determinado campo escolhido em um banco, por exemplo listar os livros que podem  ser emprestados por um aluno em uma biblioteca:

Tabelas no banco:

Livro
cod_livro PK
String autor
String titulo
Aluno
Int cod_aluno PK
Int cod_livro FK
String nome
String Classe
….

Digamos que eu queira uma tela onde possa escolher o criar um aluno adicionar um codigo de um livro que foi cadastrado no meu banco como mostra afigura abaixo:

Tela do Frame de empréstimo

No exemplo alterei o nome dos comboBox para  cbLivro:

Crie uma lista de livros no seu método main ou no seu form quando ele for chamado:

List<Livros> livrosDisponiveis;


livrosDisponiveis = new LivroDao().getLista("%%");

Esse método acima é o mesmo utilizado nos métodos DAO já criados nos vídeos tutoriais. Se não sabe do que estou falando clique no player  abaixo:

Para preencher a tabela com os livros remova todos os itens antes para não serem inseridos itens repetidos e depois use uma rotina de repetição que adicione todos.

cbLivros.removeAllItems();

for (int i = 0; i < livrosDisponiveis.size(); i++){

cbLivros.addItem(livrosDisponiveis get(i).getNome());

}

Para criar um “emprestino”, isto é criar um Aluno com um cod_livro preenchido utilize o seguinte método na classe DAO do Aluno:

Aluno p1 = new Aluno();

AlunoDao AlunoDao = new AlunoDao();

p1.setCod_Livro(livrosDisponiveis.get(cbLivros.getSelectedIndex()).getCod_Livro());

AlunoDao.adiciona(p1);

Isso fará com que o cod_livro no Aluno seja preenchido com o cod_livro do livro escolhido no comboBox.

Seria mais interessante criar uma classe empréstimo pra isso (com cod_livro e cod_alunos como FK), pois sempre será emprestado um livro para um aluno criado naquele momento, ou seja mesmo tendo alunos e livros cadastrados no banco ele criará outro com mesmo nome mas com código diferente para guardar o código do livro. Como esse problema de projeto não é o foco desse post fica ai a dica e o desafio para vocês resolverem esse problema.

Abraço a todos e aguardem novos posts sobre dúvidas e sugestões do meu canal no youtube:

http://www.youtube.com/kurtphpr

Anúncios
%d blogueiros gostam disto: