SlideShare uma empresa Scribd logo
1 de 20
HIBERNATE COM ANOTAÇÕES Equipe: Antonio Geroncio dos Santos Diego Araujo Ferreira de Melo Jameson Brito Carlindo Curso: Análise e Desenvolvimento de Sistemas Matéria: Programação Web II Professor: Roberth Pinheiro Faculdade de Tecnologia de Alagoas
SUMÁRIO Introdução ao Hibernate Slide 03 Arquitetura Hibernate Slide 04,05,06 Como utilizar o Hibernate com anotações Slide 07 Configurando o Hibernate-config.xml Slide 08 Especificando o Hibernate-config.xml Slide 09 Dialetos do Hibernate Slide 10 Classe Hibernate-Util Slide 11 Objeto Aluno Slide 12 Classe Aluno-DAO Slide 13 Resultados Slide 14,15,16,17 Conclusão Slide 18
INTRODUÇÃO AO HIBERNATE O Hibernate é um framework de mapeamento objeto relacional para aplicações Java, ou seja, é uma ferramenta para mapear classes Java em tabelas do banco de dados e vice-versa. É bastante poderoso e dá suporte ao mapeamento de associações entre objetos, herança, polimorfismo, composição e coleções. O Hibernate não apresenta apenas a função de realizar o mapeamento objeto relacional. Também disponibiliza um poderoso mecanismo de consulta de dados, permitindo uma redução considerável no tempo de desenvolvimento da aplicação. Inicialmente, o mapeamento objeto relacional com Hibernate era feito a partir de um conjunto de configurações em arquivos XMLS. Com o surgimento das anotações no Java SE 5.0, o framework Hibernate anexou este recurso, permitindo que as classes Java fossem mapeadas a partir de anotações, simplificando o seu uso.
ARQUITETURA HIBERNATE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
ARQUITETURA HIBERNATE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],ARQUITETURA HIBERNATE
COMO UTILIZAR O HIBERNATE COM ANOTAÇÕES Para utilizar o  Hibernate Annotation , primeiramente, é preciso copiar sua versão atual do site  http://hibernate.org , disponível em um arquivo compactado. Então, este arquivo deve ser descompactado e seu conteúdo consiste em um conjunto de arquivos JARS. Esses arquivos devem ser copiados para o diretório das  libs  de sua aplicação. Os arquivos hibernate-annotations.jar e lib/ejb3-persistence.jar também devem referenciados no classpath da aplicação, juntamente com a classe do driver do banco de dados utilizado.
CONFIGURANDO O HIBERNATE-CONFIG.XML
EXPECIFICANDO O HIBERNATE.CFG.XML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Já no final do arquivo hibernate.cfg.xml é onde devem ser informados os arquivos das classes mapeadas que o Hibernate deve processar. Se alguma classe não for definida neste local, a mesma não poderá ser persistida utilizando os mecanismos do Hibernate.
DIALETOS DO HIBERNATE DB2  – org.hibernate.dialect.DB2Dialect HypersonicSQL  – org.hibernate.dialect.HSQLDialect Informix  – org.hibernate.dialect.InformixDialect Ingres  – org.hibernate.dialect.IngresDialect Interbase  – org.hibernate.dialect.InterbaseDialect Pointbase  – org.hibernate.dialect.PointbaseDialect PostgreSQL  – org.hibernate.dialect.PostgreSQLDialect Mckoi   SQL  – org.hibernate.dialect.MckoiDialect Microsoft SQL Server  – org.hibernate.dialect.SQLServerDialect MySQL  – org.hibernate.dialect.MySQLDialect Oracle   (any version)  – org.hibernate.dialect.OracleDialect Oracle 9  – org.hibernate.dialect.Oracle9Dialect Progress  – org.hibernate.dialect.ProgressDialect FrontBase  – org.hibernate.dialect.FrontbaseDialect SAP   DB  – org.hibernate.dialect.SAPDBDialect Sybase  – org.hibernate.dialect.SybaseDialect Sybase   Anywhere  – org.hibernate.dialect.SybaseAnywhereDialect
CLASSE HIBERNATE-UTIL
OBJETO ALUNO
CLASSE ALUNO-DAO
RESULTADOS
RESULTADOS
RESULTADOS
RESULTADOS
ANOTAÇÕES Para o mapeamento com anotações das entidades, serão utilizadas tanto anotações do pacote javax.persistence.*, como do pacote org.hibernate.annotations. Todas as classes persistentes mapeadas com anotações são declaradas usando a anotação @Entity, aplicada em nível de classes. Quando o nome da classe é diferente do nome da tabela para a qual é mapeada é necessário informar na anotação @Table qual o nome da tabela, usando o atributo name.
EXEMPLOS DE ANOTAÇÕES Nos demais atributos da classe pode não ter nenhuma anotação de mapeamento. Isso pode ser feito quando o nome do atributo é igual ao nome da coluna da tabela mapeada, de forma que não há a necessidade de mapeamento explícito! @Table(name="aluno",schema="anotacoes") está informando o nome e o esquema da tabela para qual está mapeada a classe aluno. @Id A chave primária da tabela é mapeada na classe. @GeneratedValue permite a definição automática para o valor do identificador, utilizando um dos mecanismos de geração apresentados anteriormente. @Column(name=“cod_aluno”) informando o nome da coluna, através do atributo name.
CONCLUSÃO ,[object Object],Clique na imagem para abrir a repositório com todos os arquivos da apresentação Atenciosamente, Antonio Geroncio dos Santos Diego Araujo Ferreira de Melo Jameson Brito Carlindo Slides encontra-se publicado no  http://www.slideshare.net/dieguinhomcz

Mais conteúdo relacionado

Mais procurados

Introdução ao JPA com Hibernate
Introdução ao JPA com HibernateIntrodução ao JPA com Hibernate
Introdução ao JPA com Hibernate
Danilo Braga
 
Banco de Dados Orientado a Objeto
Banco de Dados Orientado a ObjetoBanco de Dados Orientado a Objeto
Banco de Dados Orientado a Objeto
elliando dias
 

Mais procurados (18)

Hibernate
HibernateHibernate
Hibernate
 
Hibernate
HibernateHibernate
Hibernate
 
Boas práticas com jpa 2 e hibernate flisol 2012
Boas práticas com jpa 2 e hibernate   flisol 2012Boas práticas com jpa 2 e hibernate   flisol 2012
Boas práticas com jpa 2 e hibernate flisol 2012
 
Hibernate - Aula 01
Hibernate - Aula 01Hibernate - Aula 01
Hibernate - Aula 01
 
Hibernate-consultas
Hibernate-consultasHibernate-consultas
Hibernate-consultas
 
Java 14
Java 14Java 14
Java 14
 
Bancos de Dados Orientados a Objeto
Bancos de Dados Orientados a ObjetoBancos de Dados Orientados a Objeto
Bancos de Dados Orientados a Objeto
 
Introdução ao JPA com Hibernate
Introdução ao JPA com HibernateIntrodução ao JPA com Hibernate
Introdução ao JPA com Hibernate
 
Minicurso jpa e hibernate
Minicurso jpa e hibernateMinicurso jpa e hibernate
Minicurso jpa e hibernate
 
Banco de Dados Orientado a Objeto
Banco de Dados Orientado a ObjetoBanco de Dados Orientado a Objeto
Banco de Dados Orientado a Objeto
 
Apresentação palestra ireport
Apresentação palestra ireportApresentação palestra ireport
Apresentação palestra ireport
 
1 jdbc
1 jdbc1 jdbc
1 jdbc
 
Banco de dados oracle
Banco de dados oracleBanco de dados oracle
Banco de dados oracle
 
Course Hibernate 2008
Course Hibernate 2008Course Hibernate 2008
Course Hibernate 2008
 
Artigo couchdb
Artigo couchdbArtigo couchdb
Artigo couchdb
 
Sql - introdução
Sql -  introduçãoSql -  introdução
Sql - introdução
 
Banco de dados orientados a objetos
Banco de dados orientados a objetos Banco de dados orientados a objetos
Banco de dados orientados a objetos
 
Funcionalidades Oracle
Funcionalidades OracleFuncionalidades Oracle
Funcionalidades Oracle
 

Semelhante a Mini curso hibernate com anotações

Hibernate With Visual Editor And Hibernate Tools
Hibernate With Visual Editor And Hibernate ToolsHibernate With Visual Editor And Hibernate Tools
Hibernate With Visual Editor And Hibernate Tools
marcelobeckmann
 
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Adriano Teixeira de Souza
 
Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento OR
Nécio de Lima Veras
 
Sistemas Distribuídos - Comunicação Distribuída - EJB
Sistemas Distribuídos - Comunicação Distribuída - EJBSistemas Distribuídos - Comunicação Distribuída - EJB
Sistemas Distribuídos - Comunicação Distribuída - EJB
Adriano Teixeira de Souza
 
Orientação a Objetos no Delphi - Controle de Estoque (II)
Orientação a Objetos no Delphi - Controle de Estoque (II)Orientação a Objetos no Delphi - Controle de Estoque (II)
Orientação a Objetos no Delphi - Controle de Estoque (II)
Ryan Padilha
 
CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO) CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
Grupo Treinar
 

Semelhante a Mini curso hibernate com anotações (20)

hibernate annotation
hibernate annotationhibernate annotation
hibernate annotation
 
Hibernate With Visual Editor And Hibernate Tools
Hibernate With Visual Editor And Hibernate ToolsHibernate With Visual Editor And Hibernate Tools
Hibernate With Visual Editor And Hibernate Tools
 
Workshop Hibernate Com Comentarios
Workshop Hibernate Com ComentariosWorkshop Hibernate Com Comentarios
Workshop Hibernate Com Comentarios
 
Hibernate
HibernateHibernate
Hibernate
 
Introdução ao JPA com Hibernate
Introdução ao JPA com HibernateIntrodução ao JPA com Hibernate
Introdução ao JPA com Hibernate
 
Aula hibernate
Aula hibernateAula hibernate
Aula hibernate
 
Java Seminar
Java SeminarJava Seminar
Java Seminar
 
Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)
 
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
 
Bancos de dados e jdbc java para desenvolvimento web
Bancos de dados e jdbc   java para desenvolvimento webBancos de dados e jdbc   java para desenvolvimento web
Bancos de dados e jdbc java para desenvolvimento web
 
Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento OR
 
TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.
 
Sistemas Distribuídos - Comunicação Distribuída - EJB
Sistemas Distribuídos - Comunicação Distribuída - EJBSistemas Distribuídos - Comunicação Distribuída - EJB
Sistemas Distribuídos - Comunicação Distribuída - EJB
 
Orientação a Objetos no Delphi - Controle de Estoque (II)
Orientação a Objetos no Delphi - Controle de Estoque (II)Orientação a Objetos no Delphi - Controle de Estoque (II)
Orientação a Objetos no Delphi - Controle de Estoque (II)
 
JAVA REFLETCION
JAVA REFLETCIONJAVA REFLETCION
JAVA REFLETCION
 
Tutorial JSF 2.0 (2012)
Tutorial JSF 2.0 (2012)Tutorial JSF 2.0 (2012)
Tutorial JSF 2.0 (2012)
 
Banco aula 01
Banco aula 01Banco aula 01
Banco aula 01
 
CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO) CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
 
Semana acadêmica UFRGS 2014
Semana acadêmica UFRGS 2014Semana acadêmica UFRGS 2014
Semana acadêmica UFRGS 2014
 
Palestra
PalestraPalestra
Palestra
 

Mini curso hibernate com anotações

  • 1. HIBERNATE COM ANOTAÇÕES Equipe: Antonio Geroncio dos Santos Diego Araujo Ferreira de Melo Jameson Brito Carlindo Curso: Análise e Desenvolvimento de Sistemas Matéria: Programação Web II Professor: Roberth Pinheiro Faculdade de Tecnologia de Alagoas
  • 2. SUMÁRIO Introdução ao Hibernate Slide 03 Arquitetura Hibernate Slide 04,05,06 Como utilizar o Hibernate com anotações Slide 07 Configurando o Hibernate-config.xml Slide 08 Especificando o Hibernate-config.xml Slide 09 Dialetos do Hibernate Slide 10 Classe Hibernate-Util Slide 11 Objeto Aluno Slide 12 Classe Aluno-DAO Slide 13 Resultados Slide 14,15,16,17 Conclusão Slide 18
  • 3. INTRODUÇÃO AO HIBERNATE O Hibernate é um framework de mapeamento objeto relacional para aplicações Java, ou seja, é uma ferramenta para mapear classes Java em tabelas do banco de dados e vice-versa. É bastante poderoso e dá suporte ao mapeamento de associações entre objetos, herança, polimorfismo, composição e coleções. O Hibernate não apresenta apenas a função de realizar o mapeamento objeto relacional. Também disponibiliza um poderoso mecanismo de consulta de dados, permitindo uma redução considerável no tempo de desenvolvimento da aplicação. Inicialmente, o mapeamento objeto relacional com Hibernate era feito a partir de um conjunto de configurações em arquivos XMLS. Com o surgimento das anotações no Java SE 5.0, o framework Hibernate anexou este recurso, permitindo que as classes Java fossem mapeadas a partir de anotações, simplificando o seu uso.
  • 4.
  • 5.
  • 6.
  • 7. COMO UTILIZAR O HIBERNATE COM ANOTAÇÕES Para utilizar o Hibernate Annotation , primeiramente, é preciso copiar sua versão atual do site http://hibernate.org , disponível em um arquivo compactado. Então, este arquivo deve ser descompactado e seu conteúdo consiste em um conjunto de arquivos JARS. Esses arquivos devem ser copiados para o diretório das libs de sua aplicação. Os arquivos hibernate-annotations.jar e lib/ejb3-persistence.jar também devem referenciados no classpath da aplicação, juntamente com a classe do driver do banco de dados utilizado.
  • 9.
  • 10. DIALETOS DO HIBERNATE DB2 – org.hibernate.dialect.DB2Dialect HypersonicSQL – org.hibernate.dialect.HSQLDialect Informix – org.hibernate.dialect.InformixDialect Ingres – org.hibernate.dialect.IngresDialect Interbase – org.hibernate.dialect.InterbaseDialect Pointbase – org.hibernate.dialect.PointbaseDialect PostgreSQL – org.hibernate.dialect.PostgreSQLDialect Mckoi SQL – org.hibernate.dialect.MckoiDialect Microsoft SQL Server – org.hibernate.dialect.SQLServerDialect MySQL – org.hibernate.dialect.MySQLDialect Oracle (any version) – org.hibernate.dialect.OracleDialect Oracle 9 – org.hibernate.dialect.Oracle9Dialect Progress – org.hibernate.dialect.ProgressDialect FrontBase – org.hibernate.dialect.FrontbaseDialect SAP DB – org.hibernate.dialect.SAPDBDialect Sybase – org.hibernate.dialect.SybaseDialect Sybase Anywhere – org.hibernate.dialect.SybaseAnywhereDialect
  • 18. ANOTAÇÕES Para o mapeamento com anotações das entidades, serão utilizadas tanto anotações do pacote javax.persistence.*, como do pacote org.hibernate.annotations. Todas as classes persistentes mapeadas com anotações são declaradas usando a anotação @Entity, aplicada em nível de classes. Quando o nome da classe é diferente do nome da tabela para a qual é mapeada é necessário informar na anotação @Table qual o nome da tabela, usando o atributo name.
  • 19. EXEMPLOS DE ANOTAÇÕES Nos demais atributos da classe pode não ter nenhuma anotação de mapeamento. Isso pode ser feito quando o nome do atributo é igual ao nome da coluna da tabela mapeada, de forma que não há a necessidade de mapeamento explícito! @Table(name="aluno",schema="anotacoes") está informando o nome e o esquema da tabela para qual está mapeada a classe aluno. @Id A chave primária da tabela é mapeada na classe. @GeneratedValue permite a definição automática para o valor do identificador, utilizando um dos mecanismos de geração apresentados anteriormente. @Column(name=“cod_aluno”) informando o nome da coluna, através do atributo name.
  • 20.