Duvida Persistencia

Pessoal,

Estou iniciando os estudos em Persistencia, quero saber de quem ja tem experiencia no assunto. Qual dos 2 metodos usar ?

public void PersistObjeto(Object obj) { }

ou

public void PersistEmpresa(Empresa empresa) { }

Duvida:
no 1º metodo eu poderia passar qualquer Objeto, ou seja Empresa, Funcionario, etc
no 2º metodo eu passaria apenas o Objeto Empresa, entao eu teria q ter um DAO p cada um.

Me corrijam por favor, como disse ainda estou estudando.

no primeiro recebe qualquer coisa que extends a Object e no segundo ele recebe Empresa e qualquer cosia que É-UMA empresa… ou extends a empresa… se funcionarion extends a empresa pode passar no segundo… caso contrario nao…

acho que isso!!

mas qual a melhor pratica ? eu poderia usar um Metodo Generico pra tudo entao ? porque se faz um DAO p/ cada Objeto ?

Algumas vezes, queres que um tipo específico de objeto seja utilizado pelo DAO de uma outra forma, então cria-se um DAO específico. Se fores todos os objetos terem o mesmo comportamento, prefiro o DAO genérico.

Até!

se vc utilizar o segundo metodo tera que criar um dao para cada classe de negocio que vc tiver…

por exemplo: Empresa, Empregado, Afins…

Se utilizar o primeiro pode usar um dao generico que persiste todas as classes que nao tem diferenças, e quando necessitar de algo a + na persistencia pode criar um dao especifico apenas para essa classe…

essa verificação de quem vai utilizar o dao generico ou naum, pode ser em tempo de execução atraves de annotations…