Melhor se aprofundar no JPA ou no Hibernate?  XML
Índice dos Fóruns » Ferramentas, Frameworks e Utilitários
Autor Mensagem
faeldix
JavaTeenager

Membro desde: 19/01/2011 11:18:36
Mensagens: 161
Offline

É melhor se focar na API? Ou em um provider so? Que no caso é o Hibernate visto que ele pode ser utilizado sem o JPA.
abs []'s
LPJava
GUJ Hacker

Membro desde: 18/04/2006 12:50:23
Mensagens: 5524
Localização: Bahia/Porto Alegre
Offline

pq não os dois?

Sun Certified Java Programmer 5.0
Blog:http://www.camilolopes.com
Twitter:www.twitter.com/camilolope
Linkedin: http://br.linkedin.com/in/camilolopes
Curso online OCPJP: http://pro.imasters.com.br/online/cursos/preparatorio-para-certificacao-java-ocjp
Autor livro Guia SCJP & JEE c/ Frameworks: http://blog.camilolopes.com.br/livrosrevistaspalestras/
[WWW]
faeldix
JavaTeenager

Membro desde: 19/01/2011 11:18:36
Mensagens: 161
Offline

pq eu acho que a API deve ser seguida por todos.. mas fiquei sabendo que o hibernate utiliza algumas coisas que nao estao na API.

Fiz a pergunta pq.. ao menos no meu ver.. e melhor seguir um padrao..
mas como nao tenho conhecimento de mercado, perguntei..
LPJava
GUJ Hacker

Membro desde: 18/04/2006 12:50:23
Mensagens: 5524
Localização: Bahia/Porto Alegre
Offline

faeldix wrote:pq eu acho que a API deve ser seguida por todos.. mas fiquei sabendo que o hibernate utiliza algumas coisas que nao estao na API.

Fiz a pergunta pq.. ao menos no meu ver.. e melhor seguir um padrao..
mas como nao tenho conhecimento de mercado, perguntei..


o mercado é dinâmico e o melhor a seguir, é saber os dois. Projetos mais antigos, vc vai encontrar hibernate puro, com hbm, outros ja usando annotations. E projetos mais recentes tendem a usar hibernate com JPA. Enfim, vai ter um pouco de tudo.

Sun Certified Java Programmer 5.0
Blog:http://www.camilolopes.com
Twitter:www.twitter.com/camilolope
Linkedin: http://br.linkedin.com/in/camilolopes
Curso online OCPJP: http://pro.imasters.com.br/online/cursos/preparatorio-para-certificacao-java-ocjp
Autor livro Guia SCJP & JEE c/ Frameworks: http://blog.camilolopes.com.br/livrosrevistaspalestras/
[WWW]
Master.Abs
JavaGuru
[Avatar]

Membro desde: 17/11/2010 13:47:18
Mensagens: 242
Offline

LPJava wrote:
faeldix wrote:pq eu acho que a API deve ser seguida por todos.. mas fiquei sabendo que o hibernate utiliza algumas coisas que nao estao na API.

Fiz a pergunta pq.. ao menos no meu ver.. e melhor seguir um padrao..
mas como nao tenho conhecimento de mercado, perguntei..


o mercado é dinâmico e o melhor a seguir, é saber os dois. Projetos mais antigos, vc vai encontrar hibernate puro, com hbm, outros ja usando annotations. E projetos mais recentes tendem a usar hibernate com JPA. Enfim, vai ter um pouco de tudo.


De acordo.

Att.
Master Abs
Evil Soldier the killer of Java Bugs
And
Advocate of good education.



----------------------------------------------------------------------
InsaneChess
JavaTeenager
[Avatar]

Membro desde: 22/04/2010 23:02:42
Mensagens: 194
Localização: São Paulo, SP
Offline

Só para complementar o pessoal de cima...
Se tiver de escolher entre um ou outro, escolha JPA.

Motivo: JPA é uma especificação da Oracle, sendo assim é um padrão de persistência ao qual todas as empresas que quiserem criar suas implementações e serem aceitas pela oracle teram de seguir.

MSN: diogo_chess@hotmail.com
Vamos estudar Java!!!
[MSN]
rodrigoallemand
GUJ Ranger
[Avatar]

Membro desde: 21/02/2005 20:19:47
Mensagens: 972
Localização: Rio de Janeiro, Recreio!!!
Offline

Como tudo em desenvolvimento, não existe uma regra, uma bala de prata; existem preferencias.
JPA é implementação de referencia, ou seja, não existe por si só. Ela precisa de um "provider", seja ele o Hibernate ou o TopLink.
Acho que, independentemente de qual tecnologia vc vai usar, vc precisa construir uma estrutura que seja alterada sem muito trauma e ambas as tecnologias te dá este suporte, claro, se vc construir da maneira certa.
Recentemente aconteceu em um projeto que eu participei e foi comprovada quando a MundoJ fez um benchmark para saber a performance dos diversos mecanismos de persistencia.
Por curiosidade, o Toplink + MySQL + Windows demora 1min a mais fazendo a mesma query que o Hibernate + Postgres + linux.

Esses aspectos de arquitetura devem ser levados em consideração.

EU particularmente não gosto do JPA que eu vejo o pessoal implementando. EJBQL me dá calafrios e o sistema de Criterios dele ainda é bem recente, coisa que o Hibernate já está bem maduro.
Mas concordo quando se fala que usar uma estrutura padrão da Oracle é melhor.

Rodrigo Allemand

A culpa é minha e eu a coloco em quem eu quizer!. (Homer Simpson)
http://blog.rodrigoallemand.com.br
[WWW] [MSN]
Vin?ius Abreu de Fran?
JavaChild
[Avatar]

Membro desde: 12/08/2008 18:40:09
Mensagens: 111
Offline

Cara pra falar sério eu comecei meus estudos por Hibernate e depois pulei pra JPA hoje nos projetos da empresa trabalho com Hibernate JPA como provider e o resto com JPA, mas sofri bastante com JPA porque ele é mais fácil de iplementar e tal mas abstrai muita coisa, você no início fica sem saber de onde veio isso ou aquilo, tudo acontece muito magicamente e acho isso RUIM no início pois ficamos um pouco perdidos do que realmente está acontecendo por baixo dos panos... Por isso que dou muito valor pro cara que sabe os dois!
rodrigoallemand
GUJ Ranger
[Avatar]

Membro desde: 21/02/2005 20:19:47
Mensagens: 972
Localização: Rio de Janeiro, Recreio!!!
Offline

Mas essa dificuldade que vc teve não tem nada com o JPA, é bem provavel por algum mecanismo de injeção de dependencia.... as coisas não "aparecem" do nada, elas estão configuradas para acontecerem exatamente dessa forma, via algum DI, seja Spring, CDI, Pico, etc

Rodrigo Allemand

A culpa é minha e eu a coloco em quem eu quizer!. (Homer Simpson)
http://blog.rodrigoallemand.com.br
[WWW] [MSN]
drsmachado
GUJ Expert

Membro desde: 25/09/2010 12:54:06
Mensagens: 3986
Localização: Curitiba / São José dos Pinhais - PR
Offline

A priori, estude a sintaxe JPA do hibernate.
Acostume-se com os arquivos .cfg.xml e .hbm.xml, com annotations, com uma única bag em eager initialization.
Depois, estude a sintaxe pura do hibernate (e tudo o que disse acima). Então, migre para JPA puro, com EclipseLink.
Não é difícil, depois de acostumar-se, verá como é fácil.

Rumo aos 4000
"Os homens de verdade assumem suas responsabilidades e culpas. Esquivar-se e dar desculpas é atitude dos tolos, que preferem não se comprometer".

Lugar de perguntar é no fórum!
Não respondo via MP
Não respondo por Email
Não respondo por IM
drsmachado
GUJ Expert

Membro desde: 25/09/2010 12:54:06
Mensagens: 3986
Localização: Curitiba / São José dos Pinhais - PR
Offline

InsaneChess wrote:Só para complementar o pessoal de cima...
Se tiver de escolher entre um ou outro, escolha JPA.

Motivo: JPA é uma especificação da Oracle, sendo assim é um padrão de persistência ao qual todas as empresas que quiserem criar suas implementações e serem aceitas pela oracle teram de seguir.


Não concordo com esta posição.
Vejamos, se eu me aprofundar em JSF 2, a especificação, estarei apto a trabalhar com rich, prime, ice, SpringWebFlow, imediatamente? Não.
A especificação é importante, mas a implementação é tão fundamental quanto.

Rumo aos 4000
"Os homens de verdade assumem suas responsabilidades e culpas. Esquivar-se e dar desculpas é atitude dos tolos, que preferem não se comprometer".

Lugar de perguntar é no fórum!
Não respondo via MP
Não respondo por Email
Não respondo por IM
 
Índice dos Fóruns » Ferramentas, Frameworks e Utilitários
Ir para:   
Powered by JForum 2.1.8 © JForum Team