Generic DAO  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
peron
JavaGuru
[Avatar]

Membro desde: 09/06/2005 09:39:31
Mensagens: 236
Localização: Blumenau/SC
Offline

Caros,

Estou implementando um DAO Genérico, porém tenho algumas dúvidas que não encontrei, nem no fórum nem pela web.

Bom, li estes links:

http://www.hibernate.org/328.html
http://www-128.ibm.com/developerworks/java/library/j-genericdao.html
http://aujava.wordpress.com/2006/08/09/generic-dao-and-more/
http://www.dhptech.com/node/18
http://www.java2s.com/Code/Java/Hibernate/GenericDaoCreate.htm

e fiz uma implementação de um DAO Genérico, que vos passo:



e uma implementação usando hibernate:




Bom, se eu tiver então um Bean chamado de Bean:



e o Bean Person que estende pessoa:



Bom, agora implementando um DAO para cada um, usando da herança, eu faria:







Ok, até ai tudo bem. isso funciona maravilhosamente BEM.

Porém, se eu criasse outro Bean que estende Person, como Student, e eu quisesse Herdar também os dados da interface PersonDAO, como faria?
Lembrando que eu já passei o tipo para o Generics acima (<Person>.

Bom, eu poderia na interface PersonDAO, fazer assim:



e a interface do Student




E na inicialização a minha implementação criar StudentDAO<Student> pd = new StudentDAOImpl<Student>();

mas quando rodo, essa parte da implementação do hibernate dá erro:



Porém, se eu fizesse a interface de Student já vir tipada o Generics, ia funcionar numa boa.

Então minha dúvida é essa, como fazer para não perder a possibilidade de herdar também os DAOs Genéricos e pais, sem ter que determinar um tipo no ultimo DAO.

Será que me fiz entender?

Se algúem tiver alguma luz..

Obrigado

Abraços

Marcos Peron
http://www.marcosperon.com





"Dizem que, no início, Deus criou o céu e a Terra. Mentira! Na verdade, no início Deus criou Java. Onde achas que ele programou o mundo, oras?"
[WWW] [Yahoo!] [MSN] [ICQ]
juniorsatanas
GUJ Master
[Avatar]

Membro desde: 20/05/2007 01:08:24
Mensagens: 1864
Localização: web2ajax@gmail.com
Offline

NO MEU BLOG TU ENCONTRA ISSO:

http://www.urubatan.com.br/2006/12/27/dao-generico-um-exemplo-a-pedidos/

Cheque Mate em 6
[WWW] [Yahoo!] aim icon [MSN] [ICQ]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

juniorsatanas wrote:NO MEU BLOG TU ENCONTRA ISSO:

http://www.urubatan.com.br/2006/12/27/dao-generico-um-exemplo-a-pedidos/


Seu blog?

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
peron
JavaGuru
[Avatar]

Membro desde: 09/06/2005 09:39:31
Mensagens: 236
Localização: Blumenau/SC
Offline

O Exemplo é bom, mas eu gostaria de poder fazer assim:



e em tempo de execução pegar Person no HibernateAbstractDAO.

Assim eu poderia fazer que HibernatePersonDAO extendesse HibernateBeanDAO e teria um DAO Genérico e acima de tudo, com herança dos metodos de acesso ao banco de dados, já que Person é um Bean.

Isso fica mais prático quando eu criar um HibernateStudentDAO que extende HibernatePersonDAO, pois eu poderia ter um getStudentForClass no StudentDAO mas ele herdaria o getPersonByFirstName do PersonDAO, afinal, Student é um Person.

me fiz entender?

O Problema é que se eu manter o Generic até a ultima classe, esse código:



retorna o erro:



sendo que TestAll é:


alguma idéia?

Grato desde já

Marcos Peron
http://www.marcosperon.com





"Dizem que, no início, Deus criou o céu e a Terra. Mentira! Na verdade, no início Deus criou Java. Onde achas que ele programou o mundo, oras?"
[WWW] [Yahoo!] [MSN] [ICQ]
Tecnoage
GUJ Master

Membro desde: 13/03/2005 23:18:07
Mensagens: 1723
Localização: SP
Offline

Maurício Linhares wrote:
juniorsatanas wrote:NO MEU BLOG TU ENCONTRA ISSO:

http://www.urubatan.com.br/2006/12/27/dao-generico-um-exemplo-a-pedidos/


Seu blog?


como assim meu blog???

Arquiteto de Software
Sysped Solutions
R3 SAP CAT-83, NF-e, ECD, EFD, CT-e, MANAD, IN86
www.sysped.com.br
[Email] [WWW] [MSN]
Giulliano
GUJ Master
[Avatar]

Membro desde: 14/11/2006 19:29:38
Mensagens: 1627
Localização: São Paulo
Offline

juniorsatanas wrote:NO MEU BLOG TU ENCONTRA ISSO:

http://www.urubatan.com.br/2006/12/27/dao-generico-um-exemplo-a-pedidos/


MUITO PRAZER SENHOR URUBATAN...É UMA HONRA CONHECE-LO.....



Oracle Certified Master, Java EE 5 Enterprise Architect
Oracle Certified Professional Java Programmer
GiuLLianO MoRRoNi




<UnTouChAbLe>
[Email] [WWW] [MSN]
neohacker
Virtual Machine Man
[Avatar]

Membro desde: 30/10/2006 15:23:14
Mensagens: 576
Localização: Santo André
Offline

juniorsatanas wrote:NO MEU BLOG TU ENCONTRA ISSO:

http://www.urubatan.com.br/2006/12/27/dao-generico-um-exemplo-a-pedidos/


Afffff.....que lixo de pessoa, você deveria sentir

Plagio na cara larga...

Receba todo o ódio do GUJ


http//www.tecnologiaims.blogspot.com

↑ Grab this Headline Animator

http://www.imstechnology.blogspot.com
[Email] [WWW]
Alexandre Ferreira
Virtual Machine Man
[Avatar]

Membro desde: 20/09/2006 20:07:03
Mensagens: 520
Localização: Rio de Janeiro
Offline

juniorsatanas wrote:NO MEU BLOG TU ENCONTRA ISSO:

http://www.urubatan.com.br/2006/12/27/dao-generico-um-exemplo-a-pedidos/

SEU BLOG?

Que moleque sujo... hehehehe

Deve ser aquelas crianças contadora de historia e mentirosa...
Que feio isso!!!

NO MEU BLOG...
foi ótimo....!

Alexandre Ferreira
Blog: http://alexandreferreira.com.br
[WWW] [MSN]
RaulCarlin
JavaEvangelist
[Avatar]

Membro desde: 20/05/2005 12:58:30
Mensagens: 389
Localização: São Paulo
Offline

juniorsatanas wrote:
NO MEU BLOG TU ENCONTRA ISSO:


Tsc tsc tsc... cade o VERDADEIRO dono do blog pra ler isso?
[WWW]
urubatan
Moderador
[Avatar]

Membro desde: 21/09/2002 10:31:26
Mensagens: 2481
Localização: Porto Alegre/RS
Offline

to aqui

valeu pelo link hehehehe

mas chegar se adonando do blog assim ...
só falta aparecer um post la que não foi escrito por mim agora
hehehe

[]'s
Rodrigo Urubatan
http://www.urubatan.com.br
Melhor livro de RoR do brasil: http://livro.urubatan.com.br
[WWW]
maquiavelbona
JWizard
[Avatar]

Membro desde: 29/06/2006 09:06:51
Mensagens: 2447
Localização: São Paulo - SP
Offline

Merece um L.A.I. ( Losango Aberto Invertido ).
Tomando coisas dos outros, que feio...

----------------------------------------------------------------
"Within a few years a simple and inexpensive device, readily carried about, will enable one to receive on land or sea the principal news, to hear a speech, a lecture, a song or play of a musical instrument, conveyed from any other region of the globe. "
Nikola Tesla - A means for furthering Peace (1905)

"Gedanken ohne Inhalt sind leer, Anschauungen ohne Begriffe sind blind."
Immanuel Kant - Kritik der reinen Vernunft (1781)
juniorsatanas
GUJ Master
[Avatar]

Membro desde: 20/05/2007 01:08:24
Mensagens: 1864
Localização: web2ajax@gmail.com
Offline



EU SEMPRE VOU LÁ ESTUDAR, LER ETC..

ISSO ME DA O DIREITO DE CHAMAR DE MEU !HAHAHHAHAH

urubatan , É UM PROGRAMADOR EDUCADO E SABE QUE FOI SÓ UMA BRINCADEIRA !

QUASE QUE EU FUI EXPULSO DO GUJ HAHAHHAHHAH




Cheque Mate em 6
[WWW] [Yahoo!] aim icon [MSN] [ICQ]
benflodin
JavaGuru
[Avatar]

Membro desde: 04/06/2006 13:50:18
Mensagens: 223
Offline

flamess flamesss ea resposta nada!

think Java
[WWW] [MSN]
Marky.Vasconcelos
Moderador
[Avatar]

Membro desde: 11/04/2007 18:18:20
Mensagens: 5932
Localização: São Paulo/SP
Offline

juniorsatanas wrote:

EU SEMPRE VOU LÁ ESTUDAR, LER ETC..

ISSO ME DA O DIREITO DE CHAMAR DE MEU !HAHAHHAHAH

urubatan , É UM PROGRAMADOR EDUCADO E SABE QUE FOI SÓ UMA BRINCADEIRA !

QUASE QUE EU FUI EXPULSO DO GUJ HAHAHHAHHAH





Sendo assim.

Aew povo.. cuidado com o MEU GUJ. o MEU HOTMAIL.
Parem de estudar o MEU JAVA.

Só seus argumentos não é o suficiente para dizer que algo é seu.



@benflodin
Cara.. seu nome me da medo.. aquelas pilulas loucas o.0

This message was edited 1 time. Last update was at 07/05/2009 13:39:50


Facebook @MarkyHitchhiker +Mark WP: MarkyTech's

Projects:
Android Roadmap - Aprenda Android do inicio (Java é o unico pre-requisito)
Towel ( ObjectTableModel & Swing & Utils )
Tower Defense Game - Java2D [Open-Source] [How-to-play]
EVGD: Programação de jogos (links) Ponto V! - Desenvolvimento de jogos para indies, curiosos e profissionais

DefaultTableModel?! PARE! Não faça isso! Faça melhor!

Dicas: Faça perguntas inteligentes! ; MigLayout ; GridBagLayout (Joke)

Develop games is fantastic, with words you can make worlds!!!

DON'T PANIC!
MarkyHitchhiker's Blog!
[WWW] [MSN]
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

Vou fechar isso.
Pior que flame war é flame war ressuscitada; não sei como é que o pessoal encontra essas velharias.
(É claro que sei que é pelo Google, mas acho absurdo o cara não perceber que a discussão morreu há muito tempo).
[WWW]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team