HIBERNATE
Orientada a Objeto II
Framework Hibernate
Arquitetura
Classificação das Interfaces
• Interfaces responsáveis por executar operações de criação, deleção, consulta e atualização no banco de dados: Session, Transaction e Query;
• Interface utilizada pela aplicação para configurar o Hibernate:
Configuration;
O Hibernate também interage com APIs já existentes do Java: JTA, JNDI e
JDBC.
Session (org.hibernate.Session)
O objeto Session é aquele que possibilita a comunicação entre a aplicação e a persistência, através de uma conexão JDBC. É um objeto leve de ser criado, não deve ter tempo de vida por toda a aplicação e não é threadsafe. Um objeto
Session possui um cache local de objetos recuperados na sessão. Com ele é possível criar, remover, atualizar e recuperar objetos persistentes. SessionFactory (org.hibernate.Session)
O objeto SessionFactory é aquele que mantém o mapeamento objeto relacional em memória.
Permite a criação de objetos Session, a partir dos quais os dados são acessados, também denominado como fábrica de objetos Sessions.
Um objeto SessionFactory é threadsafe, porém deve existir apenas uma instância dele na aplicação, pois é um objeto muito pesado para ser criado várias vezes.
Configuration
(org.hibernate.Configuration)
Um objeto Configuration é utilizado para realizar as configurações de inicialização do
Hibernate. Com ele, define-se diversas configurações do Hibernate, como por exemplo: o driver do banco de dados a ser utilizado, o dialeto, o usuário e senha do banco, entre outras. É a partir de uma instância desse objeto que se indica como os mapeamentos entre classes e tabelas de banco de dados devem ser feitos. Transaction
(org.hibernate.Transaction)
A interface Transaction é utilizada para representar uma unidade indivisível de uma operação de manipulação de dados. O uso dessa interface em aplicações que usam Hibernate é opcional. Essa interface