A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Introdução ao Hibernate Cássio Freire Rafael Duarte.

Apresentações semelhantes


Apresentação em tema: "Introdução ao Hibernate Cássio Freire Rafael Duarte."— Transcrição da apresentação:

1 Introdução ao Hibernate Cássio Freire Rafael Duarte

2 Introdução Hibernate é um mecanismo simples que permite persistir objetos Java em banco de dados Definição do mapeamento objeto relacional em XML Linguagem de consulta OO (HQL - Hibernate Query Language) Overhead mínimo em relação à JDBC –overhead < 10% X benefícios (separação em camadas, baixo acopl.,etc)

3 Arquitetura base

4 Características Relacionamentos (many-to-one, many-to-many, one-to-one, etc) Dialetos (MySQLDialect, OracleDialect, PostgreSQLDialect, etc) Identificadores –vm: gera identificadores de tipo long, short, int. –sequence: utiliza a sequencia das bases de dados DB2, PostgreSQL, Oracle, SAP DB, podendo ser long, shor ou int. –hilo: utiliza um algoritimo para gerar identificadores do tipo long, short, ou int. –uuid.hex, native, etc …

5 Banco de Dados suportados DB2 7.1, 7.2; MySQL M3.23; PostgreSQL 7.1.2, 7.2, 7.3; Oracle 8i, 9i; Sybase 12.5; Interbase (Open Source) with Firebird; HypersonicSQL 1.61, 1.7.0; Microsoft SQL Server 2000; –Outros Mckoi i SQL 0.93; Progress 9; Pointbase Embedded 4.3; SAP DB 7.3; Informix; Ingres; FrontBase

6 Aplicação Hibernate Hibernate Properties File –arquivo (xml ou properties) contendo as propriedades de conexão ao banco Hibernate Mapping (XML) File –arquivo xml que relaciona as propriedades do objeto aos campos da tabela Hibernate Java Library HQL (Hibernate Query Language) Java Class Files –objeto cujo estado vai ser persistido Database Schema –tabela no banco de dados

7 Cenário de Teste JSPServlet Hibernate BD HQL SQL

8 Hibernate Properties File Server.xmlProperties

9 Database Schema

10 Java Class Files

11 Hibernate cfg.xml Dialeto Arquivo que mapeia o objeto a ser persistido

12 Hibernate Mapping (XML) File

13 Adicionando um Gato // Obtém uma conexão JDBC e instancia uma nova sessão Session session = sessionFactory.openSession(); // Inicia uma nova transação (opcional) Transaction transaction = session.beginTransaction(); Cat cat = new Cat(); cat.setName("princess"); cat.setSex('M'); session.save(cat); transaction.commit(); session.close(); SQL gerado MySQL: INSERT INTO cat (id, name, sex) VALUES (NULL, ‘princess', 'M')

14 Removendo um Gato // Obtém uma conexão JDBC e instancia uma nova sessão Session session = sessionFactory.openSession(); // Inicia uma nova transação (opcional) Transaction transaction = session.beginTransaction(); session.delete("FROM cat in class example.Cat WHERE cat.id ="+request.getParameter("id")) transaction.commit(); session.close(); SQL gerado MySQL: DELETE FROM cat WHERE id = parametro

15 Herança - DomesticCat

16 Relacionamentos ( Ex: One-to-Many, Many-to-One )

17 Exemplo – Execução

18 Tecnologia Complementares Hibernate + Struts Hibernate + XDoclet + Ant Hibernate + Design Patterns (DAO, VO, etc) Ex: Utilizar scripts do ANT com o Xdoclet para gerar os arquivos “.hbm.xml” do hibernate XDoclet – Ferramenta usada para geração automática de documentação e código. Combinada com o Ant, automatiza a criação de arquivos XML, aplicações Web, Java Beans, test cases para Junit, etc. Ant – Permite automatizar todos os processos de construção, instalação, configuração, integração, deployment e depuração. Pode enviar , transferir arquivos via FTP, executar programas, transformar documentos usando XSLT, gerar PDF, etc.

19 J2EE Patterns(DataAccessObject + ValueObject) :. Estrutura Encapsula todos os acessos à origem de dados Hibernate Transportador de Dados

20 J2EE Patterns(DataAccessObject + ValueObject) :. Participantes e Responsabilidades HIBERNATE

21 Referências Página Oficial –www.hibernate.org A Hitchhiker's Guide to Hibernate –http://files.blog-city.com/files/aa/1018/b/HibernateKickstart.html Hibernate in Action: Practical Object/Relational Mapping –http://www.theserverside.com/resources/HibernateReview.jsp Hibernate & Tomcat Quickstart –http://www.hibernate.org/hib_docs/examples/quickstart/html/quickstart.html


Carregar ppt "Introdução ao Hibernate Cássio Freire Rafael Duarte."

Apresentações semelhantes


Anúncios Google