Eu estava programando uma aplicação e pensei numa classe mais ou menos assim:
import org.springframework.orm.jpa.support.JpaDaoSupport;
public class DAO<T> extends JpaDaoSupport{
public T save(T t){
getJpaTemplate().persist(t);
return t;
}
public T update(T t){
return getJpaTemplate().merge(t);
}
public void delete(T t){
getJpaTemplate().remove(t);
}
}
O que você acham dessa pratica?
Ja que nunca vi um exemplo assim por aí, gostaria de saber a opnião de voces!
Os exemplos que acho na internet sempre são interfaces com esse uso. No meu caso, declarei uma classe mesmo!
O lado ruim seria quando eu fizesse uma procura, mudasse e desse o update, teria que instanciar um PessoaDAO (por exemplo) e um DAO? ***isso se for uma classe, e não uma interface
Mas assim evito reescrever os métodos save, update e delete!
Outro problema é que usando classe, não teria como extende-la e extender o jpadaosupport, por exemplo…