Duvida sobre utilização ou não de hibernate

8 respostas
Soulless-BR

fala pessoal, tudo beleza?

Seguinte estava pesquisando sobre hibernate, ate entao fazia tudo na unha em relaçao ao banco de dados… Andei pesquisando algumas informações com amigos programadores e grande parte disseram que hibernate chega ate a dobrar o tempo de operações no banco de dados e que se for operação pesada chega a dar impressão de travamento no software, isso é real?

Qual das alternativas eh melhor, utilizar o hibernate ou fazer tudo na unha? caso tenha uma opinião melhor ficarei grato em saber dela…

OBS: não estou dizendo do hibernate, apenas vendendo o peixe que comprei…

Obrigado desde já…
Abraços…

8 Respostas

romarcio

Usa Hibernate, essa história de dobrar o tempo de processamento com banco é lenda.
Já trabalhei em projetos com grande acesso a banco e nunca teve esse tipo de problema.

Lucas_Abbatepaolo

Soulless…

eu gosto de usar hibernate para minhas aplicações, principalmente pela economia de tempo.

Pelo que sei o hibernate é o mais utilizado no mercado em relação a persistencia.

Acho q o melhor é vc utilizar e tirar suas conclusões, e se possivel veja com os seus amigos quais formas ele preferem para fazer essa manipulação de dados e poste ai pra gente assim poderemos tambem testar as possibilidades.

Att.

C

Concordo, dá para usar hibernate tranquilo, eu usei hibernate em projeto de grande porte e não tive problemas com relação a performance, inclusive o sistema realizava parses de arquivos consideravelmente grandes, oque gerava um grande acesso aos dados no banco, mas claro que o gerenciamento das sessions e transações tiveram que ser otimizados para não consumir toda memória e etc, acho que sabendo manipular bem o framework dá para usar tranquilo em aplicações de grande porte.

adriano_si

Soulless-BR:
grande parte disseram que hibernate chega ate a dobrar o tempo de operações no banco de dados e que se for operação pesada chega a dar impressão de travamento no software, isso é real?

Sim… basta você usar da forma errada que é o que seus amigos devem estar fazendo. Se eles discordarem de mim, peça-os para virem aqui ajudar os pobres mortais a usar.

Uso o Hibernate em um Sistema com Transações de milhões de linhas e até então não tive nenhuma situação de Travamento. Tem uma pequena perda de performance em uma de nossas consultas que custou caro manter no Hibernate, então foi na unha mesmo, mas todas as outras a performance é próxima do JDBC, onde o custo da demora paga o Preço de não ter que manter linhas e linhas de SQL…

Mas há de considerar alguns pontos… Você precisa 1) usar o Framework extraindo o melhor dele (poucas pessoas ainda têm essa habilidade, tanto que eu mesmo me excluo desse Grupo. Ainda acho que uso errado.) 2) Avaliar se você realmente precisa de um ORM em seu Projeto. Tem uma galera que defende que o Hibernate serve pra tudo. Eu ainda prefiro que a solução seja estudada com calma, mas há de se considerar que o ganho de tempo de Projeto é absurdo… Manutenção então nem se fala. Como a maioria dos Sistemas que precisam de Java EE dificilmente são Sites ou de Tempo de Resposta Crítico, então vai com fé.

Link pra ajudar a usar os recursos de forma correta: http://blog.caelum.com.br/os-7-habitos-dos-desenvolvedores-hibernate-e-jpa-altamente-eficazes/

Abs[]

ajinfotec

tambem nunca tive problemas.

x111

adriano_si:
Soulless-BR:
grande parte disseram que hibernate chega ate a dobrar o tempo de operações no banco de dados e que se for operação pesada chega a dar impressão de travamento no software, isso é real?

Sim… basta você usar da forma errada que é o que seus amigos devem estar fazendo. Se eles discordarem de mim, peça-os para virem aqui ajudar os pobres mortais a usar.

Uso o Hibernate em um Sistema com Transações de milhões de linhas e até então não tive nenhuma situação de Travamento. Tem uma pequena perda de performance em uma de nossas consultas que custou caro manter no Hibernate, então foi na unha mesmo, mas todas as outras a performance é próxima do JDBC, onde o custo da demora paga o Preço de não ter que manter linhas e linhas de SQL…

Mas há de considerar alguns pontos… Você precisa 1) usar o Framework extraindo o melhor dele (poucas pessoas ainda têm essa habilidade, tanto que eu mesmo me excluo desse Grupo. Ainda acho que uso errado.) 2) Avaliar se você realmente precisa de um ORM em seu Projeto. Tem uma galera que defende que o Hibernate serve pra tudo. Eu ainda prefiro que a solução seja estudada com calma, mas há de se considerar que o ganho de tempo de Projeto é absurdo… Manutenção então nem se fala. Como a maioria dos Sistemas que precisam de Java EE dificilmente são Sites ou de Tempo de Resposta Crítico, então vai com fé.

Link pra ajudar a usar os recursos de forma correta: http://blog.caelum.com.br/os-7-habitos-dos-desenvolvedores-hibernate-e-jpa-altamente-eficazes/

Abs[]


Concordo com você. Vejo muita gente usando hibernate da maneira errada. Um exemplo classico é não usar lazy load, trazendo assim todos os objetos associados ao objeto carregado. Ai é facil culpar o hibernate por perda de desempenho. O mais engraçado que eu já vi é gente que nunca usou o hibernate e diz que não usa pq é lento! Como sabe que é lento se nunca usou! Parece até lenda urbana isso.
Outra questão, como o adriano_si colocou, diz respeito a usar mapeamento objeto relacional! Se seu sistema é “Orientado a Objetos”, vc deve usar! Agora, se não for, esqueça, pois vai dar muuuiiiitooo mais trabalho. Lembrando que não é pq você usa uma linguagem OO que seu sistema é OO.

L

Eu já tive…mas como os amigos acima falaram… foi só falta de configuração… he he he…
Depois que fiz a configuração correta no arquivo .cfg … a coisa funcionou bem mais rápido em pesquisas de grande número de registros…
Eu uso o hibernate e não tenho nada a reclamar… já fiz vários sistemas usando ele…
É só saber “mecher”

kenneth

Tambem defendo o uso do Hibernate.

Quando voce pega o jeito com as Annotations (OneToOne, OneToMany, etc), fica fera.

=]

Criado 25 de março de 2011
Ultima resposta 25 de mar. de 2011
Respostas 8
Participantes 9