Dúvidas Sobre Desenpenho e Diferenças de Frameworks
Bom dia, meu nome é Michel, gostaria de tirar algumas dúvidas sobre a diferença entre dois frameworks que são o Hibernate e JPA, pois estou desenvolvendo uma aplicação acadêmica para obter o título de Bacharel em Sistemas de Informação e gostaria de saber qual a melhor opção entre esses dois frameworks:
Vantagens e desvantagens;
Qual o melhor a ser utilizado em uma aplicação Web;
Qual a principal diferença entre um e outro;
Qual obtem um melhor desempenho;
E como utilizá-los;
Sem mais agradeço pela atênção,
Um abraço Michel.
Vantagens e desvantagens;
Qual o melhor a ser utilizado em uma aplicação Web;
Qual a principal diferença entre um e outro;
Qual obtem um melhor desempenho;
E como utilizá-los;
Sem mais agradeço pela atênção,
Um abraço Michel.
Michel Martins
Curtidas 0
Respostas
Dyego Carmo
14/10/2009
Boa tarde !
Vamos por partes , na realidade JPA não é um framework e sim um padrao , a JCP (que é uma especie de w3c do java) se reuniu e definiu uma forma UNIVERSAL de se trabalhar com MAPEAMENTOS OBJETOS RELACIONAIS (Mapear um banco de dados para objetos e vice versa) , tendo este padrao feito eles chamaram de JPA...
O Hibernate já existia e já era um framework muito conhecido com o mesmo proposito, então o pessoal do Hibernate resolveu ADERIR a estes padroes impostos pela JCP, e agora o Hibernate IMPLEMENTA JPA...
Ou seja... JPA é uma especificacao (um amontoado de documento dizendo de que forma e como deve-se comportar um ORM) , o pessoal do Hibernate resolveu criar uma "casca" sobre o Hibernate que implementa este padrão, esta é Conhecida como "Hibernate EntityManager".
Então Hibernate IMPLEMENTA JPA...
JPA sozinho não faz nada... ele precisa que alguem leia toda a documentacao e implemente as ideias feitas pelo mesmo...
Existem outros Frameworks que implementao JPA... tem o TopLink da Oracle por exemplo...
Quando voce faz um aplicativo utilizando JPA (ou seja , um framework que implemente JPA) voce pode de uma hora para outra trocar de Hibernate para TopLink sem mudar nenhuma linha de codigo, e qual a vantagem disto ? Simples , se por acaso o Toplink se mostrar mais eficiente em seu aplicativo você não vai precisar ficar reprogramando para utiliza-lo :)
Eu recomentaria para voce utiliza JPA com Hibernate...
Existe um curso na DevMedia chamado "Desvendando o JPA" e outro curso chamado "Desenvolvendo uma aplicação completa utilizado JPA"
Ambos muito bons para se ter uma BOA nocao do funcionamento deste padrão.
Espero ter exclarecido suas duvidas :)
Abraços !
Vamos por partes , na realidade JPA não é um framework e sim um padrao , a JCP (que é uma especie de w3c do java) se reuniu e definiu uma forma UNIVERSAL de se trabalhar com MAPEAMENTOS OBJETOS RELACIONAIS (Mapear um banco de dados para objetos e vice versa) , tendo este padrao feito eles chamaram de JPA...
O Hibernate já existia e já era um framework muito conhecido com o mesmo proposito, então o pessoal do Hibernate resolveu ADERIR a estes padroes impostos pela JCP, e agora o Hibernate IMPLEMENTA JPA...
Ou seja... JPA é uma especificacao (um amontoado de documento dizendo de que forma e como deve-se comportar um ORM) , o pessoal do Hibernate resolveu criar uma "casca" sobre o Hibernate que implementa este padrão, esta é Conhecida como "Hibernate EntityManager".
Então Hibernate IMPLEMENTA JPA...
JPA sozinho não faz nada... ele precisa que alguem leia toda a documentacao e implemente as ideias feitas pelo mesmo...
Existem outros Frameworks que implementao JPA... tem o TopLink da Oracle por exemplo...
Quando voce faz um aplicativo utilizando JPA (ou seja , um framework que implemente JPA) voce pode de uma hora para outra trocar de Hibernate para TopLink sem mudar nenhuma linha de codigo, e qual a vantagem disto ? Simples , se por acaso o Toplink se mostrar mais eficiente em seu aplicativo você não vai precisar ficar reprogramando para utiliza-lo :)
Eu recomentaria para voce utiliza JPA com Hibernate...
Existe um curso na DevMedia chamado "Desvendando o JPA" e outro curso chamado "Desenvolvendo uma aplicação completa utilizado JPA"
Ambos muito bons para se ter uma BOA nocao do funcionamento deste padrão.
Espero ter exclarecido suas duvidas :)
Abraços !
GOSTEI 0