Como é a relação do Hibernate e DBAs?!

Oi pessoal
Ainda não uso o Hibernate, mas espero poder usá-lo! Surgiu-me as seguintes dúvidas:

  • O Hibernate é aplicável em qualquer tipo de aplicação? Quando justifica usá-lo e quando não é viável?!
  • Qual a opinião dos DBAs quanto ao Hibernate?! O DBA deve dar permissão ao desenvolvedor criar tabelas, e normalmente o DBA tem horror a isso!!!
    Valeu!!!

Nem sempre é necessário ficar criando ou modificando o modelo ER para adaptá-lo ao Hibernate. Geralmente o Hibernate dá conta.

Você só teria um impedimento ao uso do Hibernate se por acaso os DBAs da sua empresa não permitirem o uso de queries diretas (SELECT/INSERT/UPDATE/DELETE), permitindo apenas stored procedures. Vários lugares em que trabalhei funcionam assim, por razões de segurança, já que é possível atribuir permissões à stored procedure.

A relação entre DBAs e o Hibernate é péssima, pois IMHO DBAs estão perdendo bastante terreno atualmente. Alguns projetos que trabalhei onde os DBAs ficaram responsáveis pelo mapeamento OO-&gtER deu muitos problemas, pois os DBAs ficavam inventando histórias no mapeamento para fazer aquelas famosas justificativas: -"mas quando esse indice alcançar mais de 5 alocamentos de disco lá pelo ano de 2046 a performance ficará comprometida em 2 ms".

Se o sistema está baseado em stored procedures, realmente perdemos um ganho significativo no uso do hibernate, que é a independência de banco de dados. Associar perfis de segurança ao banco também não é uma boa idéia, mas acontece muito em inst. financeiras. Função do banco é guardar dados.

Nos meus últimos projetos, o hibernate tem caído como uma luva. Alguns com mais de 300 tabelas não tive problema algum. Nem precisamos mais de modelagem de dados tipo MER. Nossa visão dos dados acaba sendo as próprias classes. Um modelo de classes já nos é suficiente. Nem precisamos do MER, nem sentimos falta. Aliás, nem escrevemos os scripts de geração do DB. O schemaexport resolve.

Pq a segurança diminui quando vc usa Hibernate? Vc tb pode atribuir permissões a EJBs e a DAOs… não?!?

E quando dizem que colocar ID na tabela diminui desempenho!?!? Sem comentários.

Entrevista com Scott Ambler…

Ele fala da “boa” relação entre desenvolvedores Java e DBAs.

Cliquem em Free e aguardem alguns segundos que o download se inicia.

http://rapidshare.de/files/31363078/2005_Entrevista_-Scott_Ambler-_Agile_Modeling__Agile_Database_And_The_Agile_Development_Conference.html

Houve um problema no upload do arquivo. Para corrigí-lo, coloquem a extensão .mp3 no arquivo baixado.

Abraço.

O que é esse schemaexport??
Vc simplesmente faz o diagrama de classes e ele gera o banco pra vc??

Você faz o mapeamento do Hibernate e ele gera o banco para você, não importando se é SQLServer, Oracle, DB2, Derby, MYSQL. Ele gera pk, fk, relacionamentos…

É simplesmente “show de bola”. Fazer script de banco é um saco…

Tem um exemplo no estudo de caso da Hotmotors no site da ASPERCOM…

www.aspercom.com.br

Legal esse projeto Hot Motors, é um bom exemplo de projeto ágil. Estamos implantando XP aqui na minha empresa, algo bem parecido com esse projeto. 5 estrelas.

Eu achei o Hibernate Synchronizer, que faz o contrário, gera classes Java a partir do banco.
http://hibernatesynch.sourceforge.net/ :stuck_out_tongue:

alguem pode me passar um link sobre hibernate para iniciantes ? nunca usei e estou interessado em aprender …

ou de repente um livro bom. Ouço o pessoal falando em servlets, ejb’s, hibernate, struts mas não sei nada disso.

se alguém puder me passar um link sobre esses assuntos tb.

vlw galera

De uma olhada nesses:

http://www.guj.com.br/java.tutorial.artigo.174.1.guj
http://www.motorway.com.br/usr/daniel/java/CursoJavaWeb.zip
http://www.motorway.com.br/usr/daniel/java/IntroStruts.zip

[quote=Neo]Eu achei o Hibernate Synchronizer, que faz o contrário, gera classes Java a partir do banco.
http://hibernatesynch.sourceforge.net/ :stuck_out_tongue: [/quote]

O Hibernate Tools é o plugin oficial, e está bem mais avançado.

O DBA daqui me pergunta “E aí, aprendeu a usar esse Hibernate?” umas duas vezes por semana. Quando não tem muita coisa pra fazer, ele fica observando os logs das consultas ao banco de dados e vê aquelas SQLs indecifráveis que o Hibernate gera. Daí, fica pensando que sou eu que não sabe usar.

:mrgreen:

[quote=ZehOliveira]O DBA daqui me pergunta “E aí, aprendeu a usar esse Hibernate?” umas duas vezes por semana. Quando não tem muita coisa pra fazer, ele fica observando os logs das consultas ao banco de dados e vê aquelas SQLs indecifráveis que o Hibernate gera. Daí, fica pensando que sou eu que não sabe usar.

:mrgreen:[/quote]

Quando agente manda o bixo formatar e colocar os comentários até que fica mais fácil de entender. Problema mesmo é quando ele começa a fazer joins, aí o cara se perde completamente na query :lol:

Verdade. Eu pego o query do spool, coloco no SQL Navigator e dou um control+r, ele identa o SQL direitinho, fica lindo! He-he.