Java camadas, hibernate, combobox"RESOLVIDO"

3 respostas
R
Olá, tenho uma combobox que precisava aparecer todos os registros da tabela membro, já quando executasse o programa. Porém só aparece um registro, podem ajudar?
// camada GUI
   public Cad_Membro() {

        initComponents();
        MembroRN membRN = new MembroRN();
        membro = membRN.buscamembro();
        CbEscola.addItem(membro.getNome());

    }
// Camada Persistencia

 public Membro buscaMembro() {
        //throw new UnsupportedOperationException("Not yet implemented");
        Conexao con =new Conexao();
        Query buscamembro=con.session.createQuery(" from Membro");
        Membro membro =null;
        if (buscamembro.list().iterator().hasNext()){
            membro =(Membro)buscamembro.list().get(0);
        }
        con.desconectar();
        return membro;
    }



        }

Tenho uma classe só para conexão!
Desde já agradeço

3 Respostas

alucardeck

acontece que seu metodo buscaMembro retorna um objeto Membro…
e não uma lista como deveria ser…

tente da seguinte forma:

public ArrayList<Membro> buscaMembro() { Conexao con =new Conexao(); Query buscamembro=con.session.createQuery(" from Membro"); Membro membro =null; return buscamembro.list(); }

vc esta usando oq? hibernate?

EDIT:

aproveitando…
de uma estudada em Design patterns, MVC…

não é correto vc chamar direto a camada de persistencia pela camada de view…
deveria ter uma camada de controle ai no meio…

R

olá, na verdade não postei mas tenho a camada de regra de negócio, mas quanto ao método vou tentar , e em seguida respondo com o resultado,
Muito obrigado pela dica, valeu memso.

R

alucardeck , valeu pela dica, resolvi usando defaultComboboxModel!!!

Criado 31 de março de 2011
Ultima resposta 10 de abr. de 2011
Respostas 3
Participantes 2