Este documento apresenta um estudo de mapeamento objeto-relacional utilizando o framework Hibernate. O autor desenvolveu um sistema de gestão de custos em TI para demonstrar como o Hibernate pode resolver problemas na definição e manutenção do acesso a dados em bancos relacionais para aplicações orientadas a objetos. Os resultados mostraram que o Hibernate facilita o desenvolvimento e manutenção de software ao tratar automaticamente o acesso aos dados no banco de dados relacional.
(Sistema de gerenciamento de conteúdo para ambiente web)
Mapeamento Objeto-Relacional com Hibernate
1. ESTUDO DE MAPEAMENTO OBJETO-RELACIONAL COM
FRAMEWORK HIBERNATE
FERNANDO ANTONIO BARBEIRO CAMPOS
CENTRO UNIVERSITÁRIO CLARETIANO
Introdução Resultados
Diante de um cenário de dificuldades em todo o ciclo de Como principal resultado, foi obtido o software para
vida de um software, uma das questões elencadas como gestão de custos em TI, o qual resultou da utilização de
mais propensas a falhas e que traz significativos problemas uma combinação de padrões de projeto, como MVC,
para analistas e desenvolvedores é, sem dúvida, a definição Factory, DAO (Data Access Object) e, principalmente,
e a manutenibilidade do acesso a dados, normalmente focado na utilização de Hibernate por meio de Annotations,
provido por banco de dados do modelo relacional, para ou seja, a tecnologia contemporaneamente mais adequada
aplicações orientadas a objetos. para mapeamento objeto-relacional.
A técnica de utilizar Modelo Relacional + Orientação a
Objetos é bastante comum e produtiva, porém, a
representação dos dados em tabelas deste modelo relacional
é fundamentalmente diferente e inadequado para as redes
de objetos em uma linguagem de programação orientada a
objetos, sendo assim, isso é o que torna problemático e
falho [1].
Este trabalho objetiva apresentar a utilização do framework
Hibernate como solução para defasagens entre o modelo de
banco de dados relacional e o paradigma de programação
orientado a objetos.
Métodos e Técnicas Figura 2 – Tela principal do sistema proposto.
Subsidiando o objetivo principal, foi realizado um A solução modular e fracamente acoplada somente
aprofundamento e vivência dos conhecimentos relacionados; demonstra a eficiência do Hibernate. Pois, vários aspectos
aprofundamento este, fomentado pelo levantamento demonstram a crescente utilização de soluções com este
bibliográfico e pesquisas realizadas em diversas mídias gênero de tecnologia. Assim, sua evolução constante
(revistas, internet, publicações) em torno do assunto. procura atender cada vez mais as necessidades durante o
É possível definir, com embasamento em tais pesquisas, desenvolvimento de novos produtos.
que soluções que utilizam-se de provedores da JPA (Java
Persistence API) possuem vantagens em escrever menos Conclusão
códigos de persistência, abstração de banco de dados,
melhor tratamento de exceções e melhor gerenciamento de Apesar de haver algumas ressalvas para o uso de
recursos. Hibernate (como em aplicações onde grande parte da regra
de negócios é implementada na base de dados – por meio
de stored procedures, triggers e functions), existe um
âmbito mais amplo de situações benéficas para sua
utilização.
O Hibernate facilita o desenvolvimento e a
manutenibilidade do software, tornando mais dinâmica a
repetitiva tarefa de tratar todos os acessos a dados (por
meio de JDBC, com linguagem SQL) – o que é passível a
uma infinidade de erros e inegavelmente definida como
tarefa entediante para os responsáveis em sua execução.
Além disto, com a grande tendência de melhoria
contínua das soluções para Mapeamento O-R (com EJB3,
Figura 1 – Demonstração de um provedor JPA [2]. Annotations e novas funcionalidades que venham a surgir),
Determinado isto, foi estabelecido um estudo de caso a as evidências indicam que cada vez maior será o número
ser implementado (Sistema de Gestão de Custos em de adeptos ao Hibernate e aos provedores da JPA,
Tecnologia da Informação) como ferramenta comprobatória melhorando cada vez mais o desenvolvimento de software.
deste êxito da utilização de Mapeamento Objeto-Relacional
Referências Bibliográficas
com Hibernate. Uma vez levantado este estudo, o mesmo
fora amparado pelo uso de tecnologias como: banco de [1] BAUER, C. e KING, G. Hibernate em Ação. Tradução de Cláudio Rodrigues Pistilli. Rio de
dados MySQL; Linguagem de Modelagem Unificada (UML); Janeiro: Editora Ciência Moderna, 2005. Título do original: Hibernate inAction
plataforma Java EE para sua implementação; entre outros. [2] ORACLE (SUN MICROSYSTEMS). JPA Containers. 2002. Disponível em: <http://
blogs.sun.com/ievans/resource/images/jpaExample-containers.png >. Acesso em:
10 nov. 2010.