Pessoal , hoje com os frameworks de IOC como o Spring, o codigo abaixo esta obsoleto, certo?
Esse código é de 2004 e é um arquivo batch.
Factory, visando amanha a troca facilmente de banco de dados.
public interface DAOEmpregadoFactory {
DAOEmpregado create();
}
Implementacao do Factory. retornando uma instancia de uma class DAO.
public class DAOEmpregadoFactoryPostgreSQL implements DAOEmpregadoFactory {
public DAOEmpregado create()
{
return new DAOEmpregadoPostgreSQL();
}
Interface do DAO.
public interface DAOEmpregado {
Empregado buscaPorId(int ident) throws SQLException;
}
Class que é retornada pelo DAOEmpregadoFactoryPostgreSQL.
public class DAOEmpregadoPostgreSQL implements DAOEmpregado {
Empregado buscaPorId(int ident) throws SQLException {
// implementacao omitida
}
}
Class com o metodo main:
DAOEmpregadoFactory fabrica = new DAOEmpregadoFactoryPostgreSQL();
DAOEmpregado dao = fabrica.create();
Neste trecho acima, objeto dao é instaciado pelo retorno do metodo create do objeto fabrica. Veja que ele somente retorna uma instancia do DAOEmpregadoPostgreSQL
Eu também nao faria, esse sistema é antigo.
Mas ja que preciso mudar como ficaria um DAO hoje usando Spring (estou comecando a estuda-lo…)?
Vi que tem muito suporte, mas em alguns casos que vi, sugiram alguns coisas novas, por exemplo class services, não entendi a necessidade dessas class de servicos
[quote=afsrj]Eu também nao faria, esse sistema é antigo.
Mas ja que preciso mudar como ficaria um DAO hoje usando Spring (estou comecando a estuda-lo…)?
Vi que tem muito suporte, mas em alguns casos que vi, sugiram alguns coisas novas, por exemplo class services, não entendi a necessidade dessas class de servicos
[/quote]
Se não me engando pra fazer um hello do spring dao support é só você ter um dao que herda da classe jdbcdaosuppor e em cada método voce usa o jdbctemplate pra fazer as querys.
Mas tem muita coisa que dá pra fazer com ele, resultset extractors, etc.