Duvida Classes DAO

Ola,
Estou começando a usar classes do tipo DAO e ainda estou meio confusa ao fazer esta substituição nas classes das telas.Eu queria fazer um método consultar numa certa classe DAO e o resultado desta pesquisa eu queria colocar nos textfields de uma das telas,até aqui tudo bem eu entendi mas o problema é quando por exemplo eu tinha joins na tela.
Por exemplo eu tenho uma tela para cadastro de turmas ai eu quero inserir uma nova turma vou inserir com o método salvar da classe TurmaDAO() so que na minha tela eu tenho estes textfields nome,ano,semestre,periodo e na minha tabela no banco eu tenho estas colunas id,nome,ano,semestre,id_periodo,id_ensino e id_tipoTurma… ai quando a pesquisa era na propria tela eu fazia esta pesquisa antes de salvar:resultado=comando.executeQuery("select e.id,e.tipo,p.id from ensino e,periodo p where e.tipo='" + comboBox.getSelectedItem() + "' and p.nome='"+txtTurno.getText()+"' ");
mas agora estou um pouco confusa para fazer isso :oops: tipo meu método salvar da classe TurmaDAO é assim:

[code]try
{
PreparedStatement p = conexao.prepareStatement(“select * from turma where nome=’”+turma.getNome()+"’");
ResultSet resultado = p.executeQuery();
if(resultado.next())
{
turma.setId(resultado.getInt(“id”));
alterar(turma);

		}
		else
		{
			System.out.println("update turma set nome = ? where id = ? where ano = ? where semestre = ? where id_ensino = ? where id_periodo = ? where id_tipoturma = ?  where observacao = ?  where totalAlunosTurma = ? ");
			PreparedStatement ps = conexao.prepareStatement("update turma set nome = ? where id = ? where ano = ? where semestre = ? where id_ensino = ? where id_periodo = ? where id_tipoturma = ?  where observacao = ?  where totalAlunosTurma = ? ");
			ps.setString(1, turma.getNome());
			ps.setInt(2, turma.getId());
			ps.setInt(3, turma.getAno());
			ps.setInt(4, turma.getSemestre());
			ps.setInt(5, turma.getId_ensino());
			ps.setInt(6, turma.getId_periodo());
			ps.setInt(7, turma.getId_tipoturma());
			ps.setString(8, turma.getObservacao());
			ps.setInt(9, turma.getTotalAlunosTurma());
		}
	}...[/code]

Alguém poderia me ajudar com esta duvida…
Obrigada

Oi paty, tudo bem?

Logo de cara ja vejo que seu update está com problemas, corrija-o para:

update turma set nome = ?, ano = ?, semestre = ?, id_ensino = ?, id_periodo = ?, id_tipoturma = ?, observacao = ?, totalAlunosTurma = ? where id = ?

E ao setar o prepared statement:

ps.setString(1, turma.getNome());  
ps.setInt(2, turma.getAno());  
ps.setInt(3, turma.getSemestre());  
ps.setInt(4, turma.getId_ensino());  
ps.setInt(5, turma.getId_periodo());  
ps.setInt(6, turma.getId_tipoturma());  
ps.setString(7, turma.getObservacao());  
ps.setInt(8, turma.getTotalAlunosTurma()); 
ps.setInt(9, turma.getId());  

Quanto a sua dúvida eu não consegui entender muito bem, pode explicar novamente com mais clareza?

Abs,

Olá Paty, vc precisa estudar sobre o padrão MVC para ter uma melhor compreensão sobre o isolamento da camadas de Model, View e Controller. No site da Caelum existe uma execelente apostila gratuíta que lhe ajudará, FJ-21.

oi henriqueluz,
ja fiz as alterações que tu disseste,
eu estou tentando arrumar o método de inserir turma pq tem alguns dados que eu vou escrever na tela mas vou salvar o id disso no banco,por exemplo eu preencho na tela nome,ano,semestre,periodo…mas no banco eu salvo o id do periodo que consta na tela quando eu não usava as classes DAO eu fazia varios select’s e pronto mas agora tipo eu tenho que criar um objeto da classe TurmaDAO outro da classe Turma para depois chamar o metodo salvar mas isso nao seria problema se não tivesse esses id’s é que alem de eu criar estes objetos tenho que criar de periodo por exemplo ai eu estou confusa em como unir tudo isso sabe…
Obrigada pela ajuda =D

oi ricardo.ludwig,
obrigada pela dica vou estudar mais sim!=D

Você pode dar uma olhada nesse tutorial que abrange Swing, Dao e MVC: utilizando-swing-com-banco-de-dados

Bah muito bom o tutorial romarcio!