Quem ainda usa hbms?

Srs.,

Não entendam como uma provocação ou flamewar, longe disso, é que de uns tempos pra cá eu venho usando tão apenas o hibernate-annotations e não uso mais hbm. Gostaria de saber quem ainda usa, e os motivos pelos quais ainda usam. Tudo na mais repleta paz, só pra ver se vejo um motivo ainda pra reconsiderar usar, e que possamos discutir toda essa questão.

Enfim, quem ainda usa os hbms? E por quais motivos não adota annotations?

[]'s!

Eu prefiro o mapeamento por HBM, não gosto das anotações porque poluem muito a classe.

Mas não há nada de errado em ter annotations em um bean. Ali nao tem nenhuma regra, mesmo… É só por essa questao de gosto visual mesmo?

Com anotações:

:arrow: O Hibernate não precisa de fazer análise gramatical em XML, consequentemente a inicialização é mais rápida;
:arrow: As IDEs podem facilmnete validar e destacar as anotações, pois as mesmas não passam de tipos do Java;
:arrow: Há maior flexibilidade no desenvolvimento, especialmente em refatorações;
:arrow: É type-safe
:arrow: Auto complemento e checagem em tempo de compilação
:arrow: Menos verboso que xml ou xdoclet

A maior desvantagem, ao meu ver, é quando você precisa reaproveitar estas classes de domínio em ambientes onde não se utiliza ORM/JPA e, obviamente, anotações não existem em versões anteriores ao Java 5.

Sim, no meu caso é questão de gosto mesmo.

Também vejo mais como gosto, cada um tem vantagem e desvantagem. Prefiro Anotações e as vantagens dela já foram citadas, mas as maiores vantagens que vejo no hbm que eu vejo: a classe fica mais ‘limpa’ e a possibilidade de atualizar o arquivo sem precisar recompilar a classe, o que em algumas situações críticas podem fazer toda a diferença.

Nunca trabalhei com hbm e essa afirmação muito me interessou…

Como fazer ??? basta substituir o XML na pasta onde a aplicação foi baixada ??? Não tem necessidade de restartar o Server para Apss Web ??

Abs []

Nunca trabalhei com hbm e essa afirmação muito me interessou…

Como fazer ??? basta substituir o XML na pasta onde a aplicação foi baixada ??? Não tem necessidade de restartar o Server para Apss Web ??

Abs [] [/quote]

Bem lembrando, já precisei fazer uso disso em produção.

Nunca enxerguei as anotações como poluidoras, pra mim até facilitam enxergar os relacionamentos. Quanto ao hbm, a única vantagem que me lembro eram as queries, elas sim poluem o código.

eu uso hbms…concordo com o citado acima sobre a “poluição” kkkkk… para mim, parece que fica mais organizado… tem os beans…os mapeamentos xml onde estão as tabelas com seus campos e as queryes…

eu nao uso hbm, ja usei, e depois dos annotations tomei raiva do hbm, ta louco, olhar aqueles arquivos xml é muita mão na manutenção, annotations muito mais simples e nao acho que prejudica o code não, ainda mais e a classe tiver bem refatorada, fica show.

Nunca trabalhei com hbm e essa afirmação muito me interessou…

Como fazer ??? basta substituir o XML na pasta onde a aplicação foi baixada ??? Não tem necessidade de restartar o Server para Apss Web ??

Abs [] [/quote]

Bem lembrando, já precisei fazer uso disso em produção. [/quote]

Ow… então está certo o que eu escrevi… se bem perceberam, foram 3 perguntas que eu fiz… :lol:

Abs []

Se o servidor tiver a opção de auto-deploy ele atualiza sozinho, senão você terá que reinicia-lo. No meu caso lembro que eu tinha uma query (view dinâmica) no arquivo de mapeamento que precisou ser modificada, dai foi só alterar o hbm.

Poutz… valew… é como eu imaginei então. Excelente cara, boa notícia mesmo, pode ser bem útil no futuro…

Abs []

O JPA até onde eu sei não permite mapeamento via hbm ou outra forma de XML, mas o hibernate em sí permite, tanto hbm (xml), anotações quanto XDoclet, fica ao gosto do freguês.

Na verdade, o JPA permite mapeamento via xml sim.

Ele tem até um recurso bacana que as configurações do XML sobrepõe as configurações de Annotations.

Ou seja, se precisasse mudar alguma configuração do JPA sem precisa recompilar, mesmo usando Annotations, basta configurar no XML.

Tem mais informações aqui:
http://docs.jboss.org/hibernate/annotations/3.5/reference/en/html/xml-overriding.html

Aqui usamos hbm num sistema legado.

não gosto, mas fazer o q… está fora da minha alçada mudar isso.

Acho muito melhor usar anotações, afinal os relacionamentos ficam explícitos na sua classe, se precisar alterar é só mexer ali mesmo.

Em vez de fazer como eu, procurar em 2000 arquivos XML, então abrir o outro hbm que referencia o relacionamento, então abrir a classe java, enfim… horrível.