DAO - Dúvidas, dúvidas e mais dúvidas

5 respostas
sublyer

Bom dia, sou novo nos design patterns, mas me deparei com o DAO. vou tentar explicar um pouco a estrutura que “aprendi” mas não consigo implementar realmente.

Vamos la.

br.com.clientes.Clientes
método que implementa o DAO.

br.com.clientes.ClientesFactory
método que escolhe a conexão com a base conforme minhas configurações

br.com.clientes.ClientesDAOMySQL
classe com a conexão com o banco de dados mysql, consiste dos métodos adicionar, remover.

br.com.clientes.ClientesDAOSQLServer
classe com a conexão com o banco de dados SQL Server,consiste dos métodos adicionar, remover.

br.com.clientes.ClientesDAO
Interface de acesso a dados, consiste dos métodos adicionar, remover.

Sei que a classe Clientes vai chamar a classe ClientesDAO, para me retornar uma conexão válida, conforme minhas configurações… masssss
como eu sei que método ele vai usar o método adicionar do MySQL por exemplo…me perco totalmente nisto…

Alguém poderia me ajudar com isso…
Agradeço desde ja…

5 Respostas

Thiago_Senna

ClienteDAO dao = new ClienteDAOMySql(); dao.remover(cliente);

ClienteDAO dao = new ClienteDAOSqlServer(); dao.remover(cliente);

No primeiro exemplo, será executado o método remover referente ao MySQL, e SQLServer no segundo exemplo.

Se eu entendi bem sua pergunta, não existe mágica. É polimorfismo.

sublyer

Então o que seria esse parâmetro cliente? seria o objeto da classe Clientes?

pauloperes

sim!

sublyer

Então para implementar eu teria que realizar isso por exemplo.

public Class TestClientes{

public static void main(String[] args){

Clientes clientes = new Clientes();

clientes.setNome(“NOME”);

clientes.setIdade(15);

ClienteDAO dao = new ClienteDAOMySql();
dao.remover(clientes);

}
}

e no método remover da classe ClientesDAOMySQL eu teria então que fazer cliente.getNome();
para recuperar o valor do campo digitado?

sublyer

Consegui… obrigado pela ajuda ae…

Criado 1 de dezembro de 2006
Ultima resposta 1 de dez. de 2006
Respostas 5
Participantes 3