Grande Sérgio…
Quanto ao JTable, quase que resolvi todo ao abacaxi.
Meu problema era entender a estrutura do JTable. Depois que entendi, agora já estou bem melhor. Eu so precisava abrir as tabelas.
Tenho no meu banco as tabelas de professor, disciplinas, turmas e alunos, como tabelas simples. Deles, já fiz tudo o que precisava.
Minha única questão agora, acredito que seja a mesma da sua…
Como consiliar uma consulta entre tabelas. Hé meu amigo, e aí que o bicho pega. Tenho que fazer uma consulta numa tabela propria, prof_turma, no caso. Se fizer essa, faço todas as outras.
Eu tentei colocar uma rotina dentro de outra, mas, não fui feliz. Consegui colocar o cabeçalho da tabela, mas, na hora de mostrar as linhas…
Cloquei essa estrutura:
public void exibirTurmasProf ()
{
Session sessao = HibernateUtility.getSession();
Transaction transacao = sessao.beginTransaction();
Query hql_prof = sessao.createQuery("from Professor");
List lista_prof = hql_prof.list();
Iterator iterator_prof = lista_prof.iterator();
Query hql_turma = sessao.createQuery("from Turma");
List lista_turma = hql_turma.list();
Iterator iterator_turma = lista_turma.iterator();
Query hql_tp = sessao.createQuery("from Turma_Prof");
List lista_tp = hql_tp.list();
Iterator iterator_tp = lista_tp.iterator ();
cabecalhos = new Vector ();
linhas = new Vector ();
cabecalhos.add("Professor (a)");
cabecalhos.add("Série");
cabecalhos.add("Turma");
while (iterator_prof.hasNext())
{
Professor prof = (Professor) iterator_prof.next();
Integer id_prof = prof.getId();
while (iterator_turma.hasNext())
{
Turma turma = (Turma) iterator_turma.next();
Integer id_turma = turma.getId();
while (iterator_tp.hasNext())
{
Turma_Prof tp = (Turma_Prof) iterator_tp.next();
Object tp_codturma = tp.getComposite_ID().getCodTurma();
Object tp_siape = tp.getComposite_ID().getSiape();
Vector v_tp = new Vector ();
if ((tp_siape.equals(id_prof)) && (tp_codturma.equals(id_turma)))
{
v_tp.add ("" + tp.getComposite_ID().getSiape().getNomeProf());
v_tp.add ("" + tp.getComposite_ID().getCodTurma().getSerieTurma());
v_tp.add ("" + tp.getComposite_ID().getCodTurma().getLetraTurma());
linhas.add(v_tp);
}
}
}
}
}
Compila numa boa, mas, não imprime.
Se tiver a solução…
Quero que imprima o vinculo entre professores e turmas, independente de repetir nome de professor.
Valeu !!!