Hibernate Annotations e outras ferramentas

Pessoal, estou acostumado a usar o Hibernate usando o XDOCLET/ANT para gerar os HBMs. Tem as suas limitações, o XML gerado é pavoroso, mas funciona muito bem e já estou acostumado.

Queria saber se o Annotations de Entity já está bem maduro e se o pessoal já está usando bastante e sem problemas.

Além do XDOCLET/Annotations tem mais alguma ferramenta que vocês usam e recomendam?

Aproveitem para responder a pesquisa…

Valeus!

Tô começando a brincar com EJB 3.0/Jboss 4.0. Para quem quiser trocar idéias, estamos aí :slight_smile:

Aí é foda né.
Deveria ser assim:

Louco que é Louco faz ORM com JDBC…

Eu estou usando o Hibernate Annotations num projeto e estou achando muito melhor que fazer/gerar hbm. Recomendo.

PS: mas entre gerar hbm com xdoclet e fazer hbm na mão, prefiro fazer na mão…

[]'s

Rodrigo C. A.

Opção 1.

Não gosto de usar annotations com o um substituto do xml. Isso não resolve o problema da configuração, apenas a muda de lugar.

Portanto prefiro escrever na mão ou usar engenharia reversa no banco de dados para poupar um pouquinho de digitação.

Com annotations você evita o uso de XML, por outro lado depende do fonte para configurar o hibernate. Por isso escrevo na mão.

Eu concordo em partes com essa afirmacao. No caso do hibernate em si tem vantagens passa para annotations os mapeamentos.

Por exemplo um relacionamento one-to-many. Com xml eu preciso criar a tag e setar varios atributos nela. COm anotacao eu nao preciso de nada disso posso fazer um simples @OneToMany, como o atributo ja ta definido com Set eu nao preciso ficar indicando isso.

Quem ja mexeu com os dois mundos nota que a quantidade de configuracao com annotation diminui, ainda mais se for um banco no onde o cara pode usar o mesmo nome da entidade e das colunas na tabela.

]['s

Usava bastante o xDoclet, mas tenho preferido Annotations ultimamente. Trabalhar com dois arquivos (o fonte e o XML) é meio chato e error-prone, por isso usava o XDoclet antes. Mas depender de duas ferramentas (compilador e o xDoclet) também não é a melhor solução. Sincronizar mudanças “na mão” acho ruim também (questão de gosto), principalmente para alguém tão descuidado e esclerosado como eu.

Eu também… isso tem nome… TDAH…

Annotations também tem o schemaexport?

Com annotations é obrigatório o uso do EntityManager?

Tem algum tipo de mapeamento que o annotations não faz?

[quote=rodrigoy]Annotations também tem o schemaexport?

Com annotations é obrigatório o uso do EntityManager?

Tem algum tipo de mapeamento que o annotations não faz?[/quote]
Sim
Não
Não que eu saiba…

[]'s

Rodrigo C. A.

Rodrigo, meu xará… valeu pelas respostas… tenho mais uma dúvida então…

O que eu ganho usando o EntityManager? É só para dizer que estou usando EJB3?

[quote=InfoQ]Entity Manager - EJB 3.0 - New element in Java EE respectively Java SE, which was introduced with EJB 3.0. It is (as with JDO and Hibernate) a central persistence manager. The Entity Manager is responsible for the persistence mapping of entities (POJOs). The Entity Manager creates persistent entities in the database, loads, saves, deletes and searches them. It also cares about consistency for concurrent access to entities (concurrency handling).[/quote] (http://www.infoq.com/articles/EJB-Glossary#E)

Uma resposta curta seria um “sim”. Uma resposta mais longa começaria com um “não só por isso”. Mas, basicamente, o EM serve para abstrair o seu Persistence Provider (que pode ser o HB ou o Toplink). Daí fica a seu critério definir se você quer ou não abstrair o Hibernate através do EM.

:lol: Prefiro Hibernate / Annotations

Com a vantagem de não me preocupar com os XML.

:wink:

Só para concluir, o Jboss encapou o Hibernate como solução de persistência.

Pessoal… como faço pra usar o schemaexport usando annotations ?

valew
brigadao

Annotations

A questão não é simplesmente onde vai ficar a configuração. Com o annotations é muito mais fácil

Fiz toda a configuração e as associações necessarias em minha aplicação.
ManyToOne, OneToOne, ManyToMany, etc… usei também o Fetch.Lazy e o Eager. Posso dizer que a utilização do Hibernate Annotations esta dominada e funcionando para todos os casos que eu encontrei até o momento.

Agora estou apanhando para fazer a auditoria dos meus Objetos (DTOs). Alguem já usou alguma forma de auditoria no Hibernate Annotations (Listener, Intercepetor)?

Atenciosamente,