Curso de Java e JPA: Persista seus objetos com a JPA2 e Hibernate

5.704

Alunos neste curso

Faça esse curso e...

  • Entenda as dificuldades do uso do JDBC puro
  • Mapeamento objeto-relacional
  • Sua query simplificada com a JPQL
  • Relacionamentos lazy da forma correta!
  • Otimizações e recursos das queries

Conteúdo Detalhado

  1. Introdução ao JPA e Hibernate

    • Trabalhando com o banco de dados
    • O paradigma orientado a objetos
    • Evitando o SQL dentro do código Java
    • JDBC e SQL problemas de manutenção
    • Persistir objetos sem escrever SQL
    • Unindo os dois mundos através do Mapeamento Objeto Relacional
    • A Java Persistence API (JPA)
    • O primeiro exemplo com JPA
    • Resumo
  2. Configuração e inicialização do JPA

    • Bibliotecas do JPA e Hibernate
    • Preparação do modelo
    • A primeira Entidade
    • Preparação do banco e a geração do esquema
    • Inicialização do JPA e Hibernate
    • Gerenciamento da Transação
    • Persistindo entidades no banco
  3. Gerenciamento de estados pelo EntityManager

    • Introdução
    • Carregar entidade pela chave primária
    • Entidades gerenciadas, o estado Managed
    • Persistindo objetos transientes
    • Atualizar objetos desatachados
    • Removendo entidades pelo EntityManager
    • Resumo dos estados
  4. Mapeamento de relacionamentos entre classes

    • Relacionamento entre Entidades
    • Relacionando a Movimentação com uma Conta
    • Lidando com datas
    • Definindo a cardinalidade do relacionamento
    • Persistindo objetos envolvidos em relacionamentos
    • Lidando com a TransientPropertyException
  5. Pesquisas orientado a objetos com JPQL

    • Consultas com o Java Persistence Query Language
    • Pesquisas orientadas a objeto
    • Criando e executando Queries
    • Problemas ao usar JPQL
    • Trabalhando com parâmetros na consulta JPQL de maneira segura
    • Usando Named Parameters
    • Ordenando o resultado da pesquisa
    • Melhorando nosso filtro
    • Resumo
  6. Relacionamentos bidirecionais e o comportamento LAZY

    • Porque relacionamentos bidirecionais?
    • Navegando no relacionamento sem Join
    • Definição do relacionamento Um-Para-Muitos
    • A diferença dos relacionamentos do mundo OO e relacional
    • Declarando o relacionamento como bidirecional
    • Atualizar o schema do banco de dados
    • Testando o relacionamento bidirecional
    • O problema das N+1 consultas e como resolver
    • Comportamento LAZY dos relacionamentos para-muitos
    • Apenas por curiosidade, o FetchType.EAGER
  7. Melhorando e organizando as queries

    • Fazendo buscas com funções de agregação
    • Somando os valores pela conta
    • Melhorando a busca com TypedQuery
    • Buscando a média dos valores
    • Organize suas consultas com o Data Access Object
    • A alternativa Named Queries

Veja o primeiro vídeo

Público alvo

Desenvolvedores Java que precisam desenvolver aplicações Java para se comunicar com bancos de dados relacionais utilizando JPA2 e Hibernate.

Nível de Dificuldade

Intermediário

Já é aluno?

Começar o Curso

Sabe quando você pode começar? Agora!

  • 844 cursos

    Cursos de programação, design, UX, agilidade, transformação digital, mobile, front-end, infraestrutura e mais.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • Todas as formações

    Guias de estudo completo para você iniciar em uma nova área de tecnologia

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

Premium

  • 844 cursos

    Cursos de programação, design, UX, agilidade, transformação digital, mobile, front-end, infraestrutura e mais.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • Todas as formações

    Guias de estudo completo para você iniciar em uma nova área de tecnologia

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$75
à vista R$900
Matricule-se

Premium Plus

  • 844 cursos

    Cursos de programação, design, UX, agilidade, transformação digital, mobile, front-end, infraestrutura e mais.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • Todas as formações

    Guias de estudo completo para você iniciar em uma nova área de tecnologia

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$100
à vista R$1.200
Matricule-se

Max

  • 844 cursos

    Cursos de programação, design, UX, agilidade, transformação digital, mobile, front-end, infraestrutura e mais.

  • Certificado de participação

    Certificado de que assistiu o curso e finalizou as atividades

  • Todas as formações

    Guias de estudo completo para você iniciar em uma nova área de tecnologia

  • Projeto avaliado pelos instrutores

    Projeto práticos para entrega e avaliação dos professores da Alura com certificado de aprovação diferenciado

  • Acesso à Alura Start

    Cursos de introdução a tecnologia através de games, apps e ciência

  • Acesso à Alura Língua

    Reforço online de inglês e espanhol para aprimorar seu conhecimento

12X
R$120
à vista R$1.440
Matricule-se
Acesso por 1 ano
Estude 24h/dia onde e quando quiser
Novos cursos toda semana