Conhecer JPA e Hibernate é requisito em praticamente todas as oportunidades de trabalho em Java. Durante este curso online, você aprenderá a desenvolver sistemas com acesso a banco de dados, usando os recursos básicos e avançados do framework, usando a API do JPA 2.

Você aprenderá o que é JPA e Hibernate, o ciclo de vida dos objetos, fazer mapeamentos usando anotações da JPA, mapear herança, associações many-to-one, one-to-many e many-to-many, gravar, alterar e excluir objetos, trabalhar com lazy-loading e eager-loading, consultar objetos com JPQL, Criteria e SQL nativo, etc.

São mais de 21 horas de vídeo aulas, mas você precisará de aproximadamente 60 horas de dedicação para concluir o curso, fazendo todos os exercícios e tirando suas dúvidas com os instrutores.

Pré-requisitos

Java e orientação a objetos e noções de banco de dados.

Alunos felizes

Vídeo aulas e exercícios

  1. Introdução ao curso de JPA 2 e Hibernate 1.1. Introdução ao curso de JPA 2 e Hibernate 8m 52s
  2. O que é persistência? 1.2. O que é persistência? 3m 35s
  3. Instalando o MySQL 1.3. Instalando o MySQL 15m 11s
  4. Exercício: Instalando o MySQL no Linux Ubuntu 1.4. Exercício: Instalando o MySQL no Linux Ubuntu
  5. Criando as primeiras tabelas no MySQL 1.5. Criando as primeiras tabelas no MySQL 11m 23s
  6. Mapeamento Objeto Relacional (ORM) 1.6. Mapeamento Objeto Relacional (ORM) 8m 45s
  7. Relacionamento entre tabelas 1.7. Relacionamento entre tabelas 11m 59s
  8. Instalando e configurando o Eclipse 1.8. Instalando e configurando o Eclipse 9m 14s
  9. Download e configuração do Hibernate 1.9. Download e configuração do Hibernate 5m 54s
  10. Download e configuração do driver MySQL 1.10. Download e configuração do driver MySQL 4m 14s
  1. Salvando o primeiro objeto no Banco de Dados 2.1. Salvando o primeiro objeto no Banco de Dados 23m 21s
  2. Primeira consulta com JPA 2.2. Primeira consulta com JPA 7m 1s
  3. Removendo objeto do banco de dados 2.3. Removendo objeto do banco de dados 8m 2s
  4. Atualizando o banco de dados 2.4. Atualizando o banco de dados 5m 12s
  5. Fazendo seu primeiro CRUD 2.5. Fazendo seu primeiro CRUD
  6. Entendendo um pouco mais da transação 2.6. Entendendo um pouco mais da transação 15m 59s
  7. A Java Persistence Query Language (JPQL) 2.7. A Java Persistence Query Language (JPQL) 7m 41s
  8. Fechando o Entity Manager 2.8. Fechando o Entity Manager 4m 44s
  1. Apresentando o projeto 3.1. Apresentando o projeto 6m 49s
  2. Introdução ao Apache Tomcat 3.2. Introdução ao Apache Tomcat 5m 13s
  3. Introdução ao Apache Maven 3.3. Introdução ao Apache Maven 6m 1s
  4. Importando um projeto do GitHub 3.4. Importando um projeto do GitHub 7m 4s
  5. Introdução ao JSF 2 e Primefaces 3.5. Introdução ao JSF 2 e Primefaces 8m 20s
  6. Importante: Atualização do projeto 3.6. Importante: Atualização do projeto 13m 47s
  1. Criando o projeto do curso 4.1. Criando o projeto do curso 11m 11s
  2. Cadastrando o primeiro objeto 4.2. Cadastrando o primeiro objeto 31m 52s
  3. Implementando a consulta e exclusão 4.3. Implementando a consulta e exclusão 15m 18s
  4. Implementando a edição 4.4. Implementando a edição 14m 13s
  5. Mapeando a Primary Key 4.5. Mapeando a Primary Key 7m 47s
  6. Exercício: Mapeando a Primary Key 4.6. Exercício: Mapeando a Primary Key
  7. Identidade de um objeto - equals() e hashCode() 4.7. Identidade de um objeto - equals() e hashCode() 11m 52s
  8. Relacionamento Muitos-Para-Um 4.8. Relacionamento Muitos-Para-Um 15m 23s
  9. Mais do mapeamento Muitos-Para-Um 4.9. Mais do mapeamento Muitos-Para-Um
  10. Relacionamento Muitos-Para-Muitos 4.10. Relacionamento Muitos-Para-Muitos 14m 34s
  11. Mapeando Muitos-Para-Muitos 4.11. Mapeando Muitos-Para-Muitos
  12. Relacionamento Um-Para-Um 4.12. Relacionamento Um-Para-Um 16m 20s
  13. Mapeamento Um-Para-Um 4.13. Mapeamento Um-Para-Um
  14. Relacionamento Um-Para-Muitos 4.14. Relacionamento Um-Para-Muitos 6m 57s
  15. Implementando mais uma consulta 4.15. Implementando mais uma consulta 7m 0s
  16. Camada de persistência 4.16. Camada de persistência
  1. Inicialização Tardia (lazy-loading) e Ansiosa (eager-loading) 5.1. Inicialização Tardia (lazy-loading) e Ansiosa (eager-loading) 22m 1s
  2. Mapeando enumerações 5.2. Mapeando enumerações 13m 18s
  3. Mapeando datas 5.3. Mapeando datas 7m 11s
  4. Mapeando herança com tabela única 5.4. Mapeando herança com tabela única 18m 39s
  5. Mapeando herança com Joined 5.5. Mapeando herança com Joined
  6. Cadastro de funcionário 5.6. Cadastro de funcionário
  7. Adicionando mais uma enumeração 5.7. Adicionando mais uma enumeração
  8. Implementando mais um Muitos-Para-Um 5.8. Implementando mais um Muitos-Para-Um
  1. Introdução a Java Persistence Query Language (JPQL) 6.1. Introdução a Java Persistence Query Language (JPQL) 15m 56s
  2. Selecionando uma entidade de uma entidade 6.2. Selecionando uma entidade de uma entidade 5m 56s
  3. Filtrando resultados 6.3. Filtrando resultados 4m 40s
  4. Exercício: Filtrando resultados 6.4. Exercício: Filtrando resultados
  5. Trabalhando com projeções 6.5. Trabalhando com projeções 4m 50s
  6. Fazendo Join entre entidades 6.6. Fazendo Join entre entidades 8m 37s
  7. Trabalhando com queries agregadas 6.7. Trabalhando com queries agregadas 11m 21s
  8. Novos tipos de retorno 6.8. Novos tipos de retorno
  9. Passando parâmetros para queries 6.9. Passando parâmetros para queries 4m 53s
  10. Passando datas como parâmetros 6.10. Passando datas como parâmetros
  11. Trabalhando com Named Query 6.11. Trabalhando com Named Query 9m 38s
  12. Entendendo a paginação 6.12. Entendendo a paginação 22m 40s
  13. Implementando paginação 6.13. Implementando paginação
  1. Entendendo a Sessão e Transação no projeto 7.1. Entendendo a Sessão e Transação no projeto 10m 50s
  2. Usando JTA em um ambiente Java EE 7.2. Usando JTA em um ambiente Java EE 24m 25s
  3. Ciclo de vida e Estados dos objetos 7.3. Ciclo de vida e Estados dos objetos 15m 11s
  4. Movendo os objetos pelo ciclo de vida 7.4. Movendo os objetos pelo ciclo de vida
  1. O que é API Criteria? 8.1. O que é API Criteria? 13m 49s
  2. Consulta com Criteria 8.2. Consulta com Criteria 25m 8s
  3. Projeções 8.3. Projeções 11m 5s
  4. Funções de agregação 8.4. Funções de agregação 4m 52s
  5. Resultados complexos, tuplas e construtores 8.5. Resultados complexos, tuplas e construtores 12m 15s
  6. Funções 8.6. Funções 4m 29s
  7. Ordenação de resultado 8.7. Ordenação de resultado 2m 30s
  8. Join e Fetch 8.8. Join e Fetch 14m 15s
  9. Subqueries 8.9. Subqueries 7m 50s
  10. Metamodel 8.10. Metamodel 12m 45s
  11. Mais consultas com Criteria 8.11. Mais consultas com Criteria
  12. Implementando mais consultas 8.12. Implementando mais consultas
  1. Gravação em cascata 9.1. Gravação em cascata 8m 6s
  2. Exercício: Gravação em cascata 9.2. Exercício: Gravação em cascata
  3. Exclusão com Many-to-Many 9.3. Exclusão com Many-to-Many 7m 46s
  4. Exclusão em cascata 9.4. Exclusão em cascata 4m 4s
  5. Exclusão de objetos orfãos 9.5. Exclusão de objetos orfãos 6m 51s
  6. Gravação e exclusão em cascata 9.6. Gravação e exclusão em cascata
  1. Mapeando chaves compostas 10.1. Mapeando chaves compostas 15m 51s
  2. Mapeando objetos embutidos 10.2. Mapeando objetos embutidos 8m 42s
  3. Propriedades transientes 10.3. Propriedades transientes 5m 40s
  4. Coleções de tipos básicos 10.4. Coleções de tipos básicos 7m 47s
  5. Coleções com objetos embutidos 10.5. Coleções com objetos embutidos 9m 58s
  6. Objetos grandes 10.6. Objetos grandes 5m 1s
  7. Exibindo a imagem 10.7. Exibindo a imagem
  1. Schema e Catalog 11.1. Schema e Catalog 2m 44s
  2. Mais detalhes de @Column 11.2. Mais detalhes de @Column 3m 48s
  3. Problema n+1 11.3. Problema n+1 3m 25s
  4. Cache de primeiro nível 11.4. Cache de primeiro nível 5m 48s
  5. Consultas nativas 11.5. Consultas nativas 2m 44s
  6. Testes com jUnit, DBUnit e JIntegrity 11.6. Testes com jUnit, DBUnit e JIntegrity 13m 41s
  7. Bean Validation 11.7. Bean Validation 6m 18s
  8. Aplicação Java EE no Glassfish 11.8. Aplicação Java EE no Glassfish 17m 12s
  1. Introdução - Restrições between e eq 12.1. Introdução - Restrições between e eq 13m 26s
  2. Função de agregação sum e restrições sql 12.2. Função de agregação sum e restrições sql 10m 18s
  3. Criando subselects 12.3. Criando subselects 11m 21s
  4. LazyLoading e o FetchMode 12.4. LazyLoading e o FetchMode 12m 51s
  5. Transforme, ordene e agrupe a consulta 12.5. Transforme, ordene e agrupe a consulta 16m 45s
  6. Navegando e filtrando nos relacionamentos 12.6. Navegando e filtrando nos relacionamentos 8m 49s
  1. Conversores 13.1. Conversores 20m 55s
  2. Delete e Update com Criteria 13.2. Delete e Update com Criteria 8m 37s
  3. Convertendo o resultado de queries nativas 13.3. Convertendo o resultado de queries nativas 16m 0s
  4. Gerando o schema 13.4. Gerando o schema 18m 52s
  5. Conclusão 13.5. Conclusão 2m 29s
  1. O que é cache? 14.1. O que é cache? 5m 44s
  2. Tipos de cache do Hibernate 14.2. Tipos de cache do Hibernate 4m 29s
  3. Cache de segundo nível 14.3. Cache de segundo nível 18m 31s
  4. Cache de coleções 14.4. Cache de coleções 20m 27s
  5. Cache de queries 14.5. Cache de queries 20m 17s
  6. Cache com Ehcache 14.6. Cache com Ehcache 20m 19s
  7. Cache com Infinispan, JTA e no WildFly 14.7. Cache com Infinispan, JTA e no WildFly 39m 13s
  1. O pattern DAO 15.1. O pattern DAO 35m 34s
  2. Criando um DAO Genérico 15.2. Criando um DAO Genérico 25m 1s
  3. O pattern Repository 15.3. O pattern Repository 15m 14s
  4. Datasources 15.4. Datasources 6m 5s
  5. Pool de conexões com C3P0 15.5. Pool de conexões com C3P0 5m 19s
  6. Trabalhando com procedures 15.6. Trabalhando com procedures 18m 39s
  7. Named Queries em arquivos externos 15.7. Named Queries em arquivos externos 15m 43s
  1. OneToOne Lazy - Com anotações 16.1. OneToOne Lazy - Com anotações 11m 31s
  2. OneToOne Lazy - Com instrumentação 16.2. OneToOne Lazy - Com instrumentação 3m 36s
  3. Lock Otimista 16.3. Lock Otimista 14m 8s
  4. Lock Pessimista 16.4. Lock Pessimista 13m 28s
  5. Introdução ao Multi-Tenancy 16.5. Introdução ao Multi-Tenancy 9m 21s
  6. Multi-tenancy com bancos separados 16.6. Multi-tenancy com bancos separados 19m 21s
  7. Multi-tenancy com schemas diferentes 16.7. Multi-tenancy com schemas diferentes 7m 51s
  8. Engenharia reversa com Hibernate Tools 16.8. Engenharia reversa com Hibernate Tools 10m 39s

Instrutor

Junior

Junior

Sócio e instrutor da AlgaWorks, formado em Engenharia Elétrica pela Universidade Federal de Uberlândia e detentor das certificações LPIC-1, SCJP e SCWCD.

Palestrante internacional reconhecido por contribuir e liderar projetos open source ligados a área de telecom.

Apenas R$ 497,00 Comprar agora! Acesso imediato. 3x R$ 165,67 sem juros Ou em até 18x com juros pelo PagSeguro Pague com cartão, boleto ou PagSeguro
Selo de garantia Garantia de 30 dias - seu dinheiro de volta sem perguntas e sem letras miúdas

Ainda tem dúvidas sobre este curso?

  1. Não. Para assistir as vídeo aulas, você precisa estar conectado à internet.
  2. Usamos o PagSeguro para receber os pagamentos de nossos cursos online. O PagSeguro aceita a maioria dos cartões de crédito, em até 18x. Oferecemos parcelamento em até 3x sem juros no cartão de crédito. Para pagamento por boleto ou transferência eletrônica, o pagamento deve ser feito à vista (também pelo PagSeguro).
  3. Com certeza! Já atendemos diversos órgãos do governo através de licitações e notas de empenho. Entre em contato conosco.
  4. Você pode fazer o pagamento por Paypal ou Western Union. Entre em contato conosco.
Sua dúvida não foi esclarecida? Entre em contato.