Recursividade

2 respostas
M

Olá.
Estou com dúvidas com relação a construção de um Jtree oriundo do banco de dados.
Vejam bem…

Trabata-se de uma tabela indexada, ela aponta para ela mesma.

Como eu preciso fazer para usar algo com recursividade, por exemplo.

Obrigado.

2 Respostas

diego.sas

Boa tarde, posta algo que ja tenha feito, que fica melhor para auxilia-lo.

M

Bom, a Tabela é indexada, de Grupos.
Então ela possuí os capos idgrupo (inteiro, autoincremento), descricao varchar(100), e uma FK do próprio idgrupo (é a chave primária dessa tabela, apontando pra essa mesma tabela).

Aí, haverá um primeiro registro cujo essa chave será null, que seria o pai da Jtree, um registro PRINCIPAL onde todos os demaias grupos serão ligados nesse principal.

Então eu tenho as declarações na minha tela… O Jtree, um DefaultMutableTreeNode que será esse registro Principal e uma Lista dos Grupos…

private JTree arvore = null;
 private DefaultMutableTreeNode noPai = null;
 private List<Grupo> listaGrupo = null;

Depois eu recupero e populo essa lista com as informações que vem do banco… e percorro ela com um laço de repetição “for” afim de encontrar o pai. O critério utilizado é que a chave ID que é referênciada (FK) seja nula.
Encontrando esse principal, eu monto o no pai. E coloco ele na árvore.

listaGrupo = new GrupoFachada().recuperarTodos();

            for(int i=0; i<listaGrupo.size(); i++){
                if(listaGrupo.get(i).getGrupo() == null){
                    noPai = new DefaultMutableTreeNode(listaGrupo.get(i).getNome());
   
                    break;
                }
            }

Está aí o código. :smiley:

Criado 19 de março de 2012
Ultima resposta 20 de mar. de 2012
Respostas 2
Participantes 2