Escolar Documentos
Profissional Documentos
Cultura Documentos
Programao de Aplicativos II
Hibernate X JDBC
JDBC umas das maneiras mais diretas para desenvolver uma aplicao java que interaja com o banco de dados. Esta tecnologia atende a um percentual considervel das necessidades, porm conforme nossas aplicaes evoluem, sentimos necessidade de padronizar a arquitetura, codificao e as operaes realizadas. Dessa forma ferramentas como o Hibernate so uma tendncia natural para este tipo de situao.
Hibernate e o sql
Para utilizar ferramentas deste propsito temos que entender melhor o conceito da especificao JPA (Java Persistence API) Entender a linguagem SQL e o modelo relacional ajuda a desenvolver melhor com o Hibernate. Somados a estes conceitos temos tambm a DQL (Data Query Language). Tudo que o Hibernate faz traduzido par a linguagem sql e o modelo relacional.
Podemos entender como a forma automatizada e transparente de persistir objetos que pertencem a uma aplicao nas respectivas tabelas em um banco de dados relacional O ORM trabalha para fazer a transformao de dados de uma maneira a outra de forma reversvel.
Uma API para realizar operaes CRUD bsicas em objetos de classes persistentes. Uma linguagem ou API para especificar consultas que se referem s classes ou s propriedades das classes Facilidade de especificar o metadado de mapeamento. Uma tcnica que permita trabalhar com objetos transacionais, com carregamento sob demanda e etc.
O hibernate possui as caractersticas listadas, o que o caracteriza como uma aplicao ORM
Hibernate e JPA
O hibernate uma das solues ORM encontradas hoje no mercado. Existem outras como: TopLink da Oracle e OpenJPA da Apache. Seja qual for a soluo adotada tende a seguir a especificao JPA, esta integrando uma especificao maior EJB, responsvel por padronizar todo o modelo de programao.
Hibernate (3 Frentes)
Hibernate Core: a base para todo o conjunto de solues para persistncia que esta tecnologia oferece. Linguagem prpria HQL e interface de pesquisa critria. Hibernate Annotations: substituio dos arquivos xml para mapeamento de classes por anotaes na prpria classe do modelo. Hibernate EntityManager: realiza as operaes de persistncia.
Instalao
http://www.hibernate.org/ Disponvel para Download no site. J esta integrado ao NetBeans. Quando criamos o projeto j podemos incluir a biblioteca. Depois apenas necessrio a configurao da conexo/banco de dados utilizado.
Arquivo Configurao
Hibernate.cfg.xml
<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory>
Configuraes diversas
</session-factory> </hibernate-configuration>
Configuraes de Debug
Pool de conexes
<!-- Usando as configuraes do C3PO para pool de conexes --> <property name="c3po.min_size">5</property> <property name="c3po.max_size">20</property> <property name="c3po.timeout">300</property> <property name="c3po.max_statements">50</property> <property name="c3po.idle_test_period">3000</property>