atom feed31 messages in net.java.dev.cejug.discussao[CEJUG] Re: DAO generico vale a pena?
FromSent OnAttachments
Jean Jorge MichelJun 7, 2011 5:59 pm 
Leandro CostaJun 7, 2011 6:05 pm 
Rafael SantiagoJun 7, 2011 9:19 pm 
Leonardo RuosoJun 8, 2011 3:29 am 
Leonardo RuosoJun 8, 2011 3:40 am 
Wendel CabralJun 8, 2011 4:20 am 
Hildeberto MendonçaJun 8, 2011 4:22 am 
Leandro CostaJun 8, 2011 4:35 am 
Hildeberto MendonçaJun 8, 2011 4:47 am 
Assis JúniorJun 8, 2011 4:50 am 
Leandro CostaJun 8, 2011 4:52 am 
Jean Jorge MichelJun 8, 2011 5:00 am 
Jean Jorge MichelJun 8, 2011 5:12 am 
Petit xDJun 8, 2011 5:18 am 
Rafael PonteJun 8, 2011 5:19 am 
Rafael PonteJun 8, 2011 5:24 am 
Hildeberto MendonçaJun 8, 2011 5:34 am 
Julio ViegasJun 8, 2011 5:41 am 
Guilherme BahiaJun 8, 2011 5:49 am.gif
Jean Jorge MichelJun 8, 2011 5:52 am 
Jean Jorge MichelJun 8, 2011 6:03 am 
Assis JúniorJun 8, 2011 10:09 am 
Jean Jorge MichelJun 10, 2011 9:15 am 
Leonardo RuosoJun 10, 2011 10:32 am 
Leonardo RuosoJun 10, 2011 10:36 am 
MesiasJun 10, 2011 12:16 pm 
Leonardo RuosoJun 10, 2011 12:34 pm 
Assis JúniorJun 10, 2011 2:01 pm 
Assis JúniorJun 10, 2011 2:03 pm 
Ivan AguirreJun 10, 2011 4:44 pm 
Jose MoisesJun 10, 2011 6:32 pm 
Subject:[CEJUG] Re: DAO generico vale a pena?
From:Leonardo Ruoso (leon@gmail.com)
Date:Jun 10, 2011 12:34:52 pm
List:net.java.dev.cejug.discussao

DAO é uma pattern que tem uma aplicação específica. Se você não precisa de um DAO "específico" você não precisa de um DAO e pode seguir usando JPA. O que acontece é que há muita gente que pega alguns patterns e os aplica em todas as situações, mesmo naquelas em o pattern não seria aplicável...

Em 10 de junho de 2011 16:17, Mesias <ale.@gmail.com> escreveu:

Gente, DAO é uma abstração, Hibernate um Framework ORM. Tem como confundir uma coisa com a outra ou dizer que ao usar uma a outra é desnecessária ? estranho...

Tem operações que são muito obvias para qualquer Entidade que for ser usada, usa-se DAO por conveniência e reaproveitamento de código usando interfaces/classes abstratas etc.

Tem uma discussão mais interessante que é um

2011/6/10 Leonardo Ruoso <leon@gmail.com>

Concordo plenamente, se você precisa de um DAO genérico é sinal que você não precisa de um DAO! :-)

Em 8 de junho de 2011 08:50, Assis Júnior <assi@gmail.com> escreveu:

Kra, faz muitos anos que não uso DAO. O Padrão dao existe por um motivo e

para solucionar um problema. Se você estiver usando jpa o entityManager resolve seu problema de acesso aos dados de forma que você não precisa de um dao. Named queries também te ajudarão com o reuso de consultas ao banco.

<http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html>Caso queira concentrar algumas consultas em um objeto dá uma olhada no padrão repository. fontes:

http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html http://martinfowler.com/eaaCatalog/repository.html <http://martinfowler.com/eaaCatalog/repository.html> http://blog.caelum.com.br/repository-seu-modelo-mais-orientado-a-objeto/

Em 8 de junho de 2011 08:23, Hildeberto Mendonça <me@hildeberto.com>escreveu:

CMP foi descontinuado. JPA é o que cumpre esse papel atualmente. Se você olhar com atenção, JPA é uma espécie de DAO generico. Muito poderoso. As versões mais recentes dos servidores de aplicação já suportam EJB + JPA há mais de 2 anos.

2011/6/8 Leonardo Ruoso <leon@gmail.com>

Houve outra discussão em que eu manifestei minha opinião sobre o uso indiscriminado de DAO e parece que esse é um caso em que simplesmente você não precisa de DAO. É a velha história da bala-de-prata... Antigamente esse pareceria o caso de usar EJB com CMP, mas parece que essa prática anda meio banida na comunidade local.

Em 7 de junho de 2011 21:59, Jean Jorge Michel <jean@gmail.com

escreveu:

Boa noite pessoal.

Queria saber dos amigos se vcs acham vantagem ter um DAO generico ao invés de DAOs para casa classe do sistema. Deixa eu ver se me faço entender.

Hoje estou vendo um sistema onde TUDO é genérico. Ok, pode ser válido. Mas ai vem aquela pergunta: e o ovo, veio antes ou depois da galinha? Quando temos um DAO genérico e queremos algumas ações específicas para uma classe? Aqui foi feito um DAO para a classe X que estende o genérico e tal.... mas quase toda a classe tem sua peculiaridade, então são muitos DAOs estendendo o genérico.

A Caelum no seu blog fala em interfaces para restringir o DAO genérico. Aí teremos um uma interface do DAO genérico > a implementação do DAO genérico > a Interface de restrição > o DAO que estende o genérico e implementa a interface. Ufa. Se eu vou ter isso para 30 classes eu posso economizar 30 interfaces não tendo esse DAO genérico.

Queria o conselho, a experiência dos amigos sobre o assunto.

Pela atenção obrigado.

* Sent from my cellphone, please forgive the lack of accents and punctuation marks ;) My blogs: http://www.jeanjmichel.blogspot.com and http://www.anonymousbiker.wordpress.com My Twitter: http://twitter.com/jeanjmichel