1 DAO para 1 Tabela está OK.
Você também pode usar DAOs para coisas específicas, por exemplo BaixaDeEstoqueDAO, que envolve vários procedimentos no BD.
Um Factory Method apenas faz mais sentido se vc for SOMENTE utilizar BD.
A não ser que mude para arquivo, FTP, etc… ai sim dá pra colocar um Abstract Factory.
public final class DAOFactory{
public static ClienteDAO getClienteDAO(){
return new ClienteDAOImpl();
}
}
public Interface ClienteDAO{
public void inserir();
}
public class ClienteDAOImpl implements ClienteDAO{
public void inserir(){
//codigo para inserir
}
}
no cliente eu usaria:
DAOFActory.getClienteDAO().inserir();
está correto?
outra coisa posso usar “Impl” no final da classe que implementa a interface de DAO ou tem um lugar especifico para usar “Impl”.
E o que diabos tem a ver “metodos estaticos nao sao OO” (uma afirmacao, alias, falsa) e o fato de que a especificacao de EJBs proibe o uso de ATRIBUTOS estaticos?
Alguns esclarecimentos:
Metodos estaticos sao bons
Estado estatico eh ruim para aplicacoes J2EE
(Quase) todas as linguagens OO possuem metodos de classe, ou metodos estaticos