[RESOLVIDO]Como carregar registros do banco e fazer o sistema criar um componente para cada um?

Olá a todos

Estou na fase de desenvolvimento do T.C.C, que é um simples software de auxilio a futuros motoristas, e em um dos formulários quero que seja apresentando todas as placas de um tipo, carregadas de forma dinâmica.
ou seja se um tipo de placa possui 50 placas, dentro de um painel nesse mesmo formulário deve ser carregado a imagem dessa placa, agora ao selecionar outro tipo de placa, essas devem ser apagadas e carregadas as outras placas do outros tipo.

o que queremos é semelhante a um botão para cada item do banco, que varia de acordo com a quantidade de registro de cada tipo de placa.
A imagem que será carregada do banco terá que vir acompanhado do seu nome em baixo, para que não fique só a imagem pura, e quando o usuário efetuar o clique sobre a imagem, em um JtextArea logo abaixo, aparece a descrição dessa placa.
Já estou a uma semana tentando resolver esse problema, como no meu curso não tem professores que são especialistas em JAVA, está difícil eu conseguir com eles, e na internet está bem difícil encontrar o que quero.

Alguém conhece alguma forma de me ajudar? Se alguém não entendeu o que eu disse ou da formar que eu quero, por favor, diga isso, que tendo explica mais detalhadamente ainda.
A algum tempo atrás também postei um exercício que estava fazendo, com esse mesmo intuito, para poder ter uma noção de como elaborar algo do tipo.
nesse link - > http://www.guj.com.br/java/284358-colocar-imagens-e-rotulos-dinamicamente-no-sistema

obrigado pela atenção de todos, e espero que alguém possa ajudar-me.

Por favor, não peça urgência no fórum.

Opa, ZeTripe, beleza?

Dinamismo é um negócio bacana em softwares; porém, enquanto não pegamos o jeito, ficamos travados na bobeira que é. Então vamos lá:

  1. Você deve criar uma classe que armazene os bytes dessa figura, com um título, nome ou coisa parecida:public class Placa { private TipoPlaca tipoPlaca; private String titulo; private byte[] imagem; }

  2. Você deve fazer uma consulta onde você carrega as imagens de um determinado tipo, e assim você obterá uma coleção de Placas:List<Placa> placas = buscarPlacasDoTipo("Nome do tipo");

  3. Se o seu projeto for Desktop…
    3.1. Primeiro, defina o layout de seu JFrame ou JDialog.

3.2. Se você usa os layouts nativos, seria legal você usar o GridBagLayout, nessa questão. Você define quantas colunas você quer e faz uma iteração sobre a coleção, adicionando no painel as imagens em ordem. Algo como:[code]GridBagConstraints cc = new GridBagConstraints();
cc.insets = new Insets(5, 5, 5, 5);
cc.gridx = 0;
cc.gridy = 0;
JPanel panelPlacas = new JPanel(new GridBagLayout());

List placas = buscarPlacasDoTipo(“Nome do tipo”);
foreach (Placa placa : placas) {

// OBS: Transformar o array de bytes em um ImageIO. Agora não me recordo de cabeça como faz.
panelPlacas.add(placa.getImagem(), cc);
cc.gridx++;
if (cc.gridx == 3) {
    cc.gridx = 0;
    cc.gridy++;
}

}[/code]

3.3. Se você usar outra framework qualquer (eu uso o MigLayout, e recomendo!), procure como fazer para adicionar componentes neles.

  1. Agora, se seu projeto for Web…

4.1. Você pode fazer uma requisição AJAX/JSON e buscar esses dados server-side. Algo como:[code]var tipo = { ‘tipoPlaca’ : ‘1’ };
$.get(‘placas/pesquisarPlacasDoTipo’, tipo, function(placas) {

var placas = "<ul id='placas'>";
$(placas).each(function (i, item) {
    placas += "<li><a href='" + item.getNome() + "' alt='' /></li>";
});

placas += "</ul>";
$('#pesquisaPlacas').html(placas);

})[/code]

4.2. Recuperando esses dados, você cria, através de uma iteração sobre estes dados recuperados, uma div com porcentagem de 25%, por exemplo, e vai adicionando dentro de uma lista, fazendo com que o resultado final seja parecido com:[code]

[/code]

Talvez isso possa te dar uma luz.
Espero ter ajudado,
fique com Deus! :smiley:

O meu projeto e é desktop

Eu tentei seguir ao máximo, tudo que você disse, gostaria que você desse uma pequena olha em meu código, que trabalhei bem nos comentários, porque eu não consigo fazer ele dinâmico

Eu elaborei outro exercício, nele eu quero carregar um Jpanel para cada registro no banco, e dentro de cada Jpanel dois Jlabel, uma com uma imagem/foto e outro com uma descrição dessa foto. Tudo isso dinamicamente

vou postar o projeto para download, se puder me ajudar, ficaria grato demais, pois o projeto não apresenta nenhuma exceção, apenas não aparece nada, o que quero que carrege dinamicamente não acontece.

Exportei o banco, e ele também está dentro do rar, apenas não possui o J/connector. “ficaria muito pesado”

Opa, ZeTripe.

Fiz um exemplo baseando-me nas imagens que você tinha do projeto.
Dê uma olhada, quem sabe te dê uma luz!

Abraços,
fique com Deus! :smiley:

Gostaria muito de te agradecer, me ajudou muito.
conseguir assimilar o seu código e montar o meu, obg mesmo.
tudo de bom.