persistência

conceitualmente está ok, entendo q uma classe define como o objeto vai ser persistido e que este poderá ser recuperado de forma que eu a utilize novamente como um objeto.

Eu não entendo é na prática.
Pq tem uma classe que é a entidade e outra que é o DTO?
Pq tem nem sempre as entidades tem um DTO?
Pq as vezes os mesmos atributos q tem na entidade existem tb no DTO, e outras vezes não?

Obrigado

[quote=rodpuc]conceitualmente está ok, entendo q uma classe define como o objeto vai ser persistido e que este poderá ser recuperado de forma que eu a utilize novamente como um objeto.

Eu não entendo é na prática.
Pq tem uma classe que é a entidade e outra que é o DTO?
Pq tem nem sempre as entidades tem um DTO?
Pq as vezes os mesmos atributos q tem na entidade existem tb no DTO, e outras vezes não?

Obrigado[/quote]

Pelo que entendi sua pergunta, vc quer saber pq tenho que ter uma classe de modelo e outra DAO? É essa sua questão?

Se for, no DAO os atributos que existem não são os mesmos da entidade. Por exemplo, um dos atributos que pode utilizar no DAO é a Session.
Mas esse objeto do tipo DAO apenas trata a persistência de um objeto do modelo da entidade em alguma sessão. Não sei se fui claro, mas é dessa forma que entendo.

E por isso essa diferença.

[]´s

Não é DAO, pois uso hibernate

é DTO (data transfer object) mesmo… alguns tb chamam de VO e outros…

up

Essa história de DTO é complicada. Tem muita gente que sugere que não se utilize mais DTO pois são objetos anêmicos (sem comportamento). Parece que começaram a utilizar pra trafegar objetos entre camadas, ou principalmente quando é necessário transferir objetos pela rede. Em princípio você não precisa de DTOs, dê uma lida na wiki do Philip Calçado (http://www.fragmental.com.br/wiki/index.php/Evitando_VOs_e_BOs).

Falou.

wagnerfrancisco muito obrigado pelo artigo, muito interessante e acrescentou muito, de verdade.

Mas… (sempre tem um mas :slight_smile: )

é fato que:
1 - na empresa onde trabalho utilizam DTOs, então estou preso a isso, seja bom ou ruim. (pelo menos até convencê-los a mudar).
2 - como o próprio artigo indica, os erros são da própria Sun… acredito q seja dificil encontrar uma alternativa aos DTOs, e msm q seja possível, acho q teria de entender como usá-los direito antes de procurar uma solução melhor.

então minha dúvida ainda “persiste” (sem trocadilhos :stuck_out_tongue: )

Obrigado!