JPA Eficaz: As melhores práticas de persistência de dados em Java

JPA Eficaz: As melhores práticas de persistência de dados em Java

by Hébert Coelho
JPA Eficaz: As melhores práticas de persistência de dados em Java

JPA Eficaz: As melhores práticas de persistência de dados em Java

by Hébert Coelho

eBook

$9.99 

Available on Compatible NOOK devices, the free NOOK App and in My Digital Library.
WANT A NOOK?  Explore Now

Related collections and offers

LEND ME® See Details

Overview

Entender o básico da JPA pode ser simples e rápido, mas com o uso do dia a dia, ela se torna uma ferramenta que demanda muito cuidado. É preciso conhecer bem seus detalhes para não cair em armadilhas. Nesse livro, Hebert Coelho explica em tópicos curtos, e direto ao ponto, técnicas para usar a JPA da melhor forma possível, com atenção aos equívocos mais comuns. Você vai aprender a evitar o problema de N+1 consultas, usar corretamente o controle transacional, fazer consultas que envolvam relacionamentos, controlar quando usar EAGER ou LAZY nos relacionamentos, evitar a famigerada LazyInitializationException e muito mais.

Product Details

ISBN-13: 9788566250817
Publisher: Casa do Código
Publication date: 04/16/2014
Sold by: Bookwire
Format: eBook
Pages: 183
File size: 934 KB
Language: Portuguese

About the Author

Hébert Coelho de Oliveira é analista desenvolvedor sênior, pós-graduado em Engenharia de Software, professor em faculdade e escritor nas horas vagas. Trabalha há mais de 10 anos com desenvolvimento de softwares e possui as certificações SCJP, SCWCD, OCBCD, OCJPAD. É autor do livro JSF Eficaz, publicado pela editora Casa do Código, que dá dicas e melhores práticas para os desenvolvedores que utilizam o JSF em seus projetos. É ainda autor do framework EasyCriteria que ajuda na utilização da Criteria da JPA, sendo testado com Hibernate, OpenJPA e EclipseLink e com 100% de cobertura nos testes. Foi revisor de um livro específico sobre Primefaces e criador de posts em seu blog com aplicações completas utilizando JSF. Escreveu dois posts sobre JPA com diversas dicas que já passaram de 55 mil visualizações, e que também foi o ponto de partida desse livro. Pós-graduado em MIT Engenharia de Software — desenvolvimento em Java pela Infnet RJ. Atualmente atua como professor para o curso de pós-graduação, ensinando o conteúdo de Java Web (JSP, Servlet, JSF e Struts) e tópicos avançados, como EJB, Spring e WebServices.

Table of Contents

1 - Introdução 2 - Como escolher uma implementação e as configurações da JPA 2.1 - Escolha uma implementação 2.2 - Como compor meu persistence.xml? 2.3 - Configurando a aplicação através de XML 2.4 - Como conseguir um EntityManager 2.4.1 - Controlando a transação manualmente 2.4.2 - Servidor controlando a transação 3 - Aprenda os detalhes dos mapeamentos de entidades 3.1 - Entidades e o seu papel no banco de dados 3.2 - Saiba Gerar seu id Automaticamente 3.3 - O eterno problema do mapeamento de chaves compostas 3.4 - Mapeando mais de uma tabela 3.5 - Como mapear herança da melhor maneira? 3.5.1 - Mapped Superclass 3.5.2 - SINGLE_TABLE 3.5.3 - JOINED 3.5.4 - TABLE_PER_CLASS 3.6 - Trabalhe com os Embedded Objects 3.7 - Mapeie enums e lista de valores 4 - Entenda e mapeie corretamente os relacionamentos 4.1 - Use os relacionamentos 4.1.1 - Relacionamentos com @OneToOne 4.1.2 - Cuidados com o @OneToMany e @ManyToOne 4.1.3 - @ManyToMany 4.2 - Entenda como funciona o Cascade 4.3 - Entenda como funciona o OrphanRemoval 4.4 - Como utilizar Lazy e Eager Loading corretamente 4.5 - Entenda a LazyInitializationException 4.5.1 - Utilizando o método size das listas 4.5.2 - Carregamento por anotação 4.5.3 - Stateful EJB 4.5.4 - Carregando por Query com Join 4.6 - Aprenda a tratar o erro: 'cannot simultaneously fetch multiple bags' 4.7 - Trate o erro: 'could not initialize a collection' 4.8 - Cuidado para não cair no famoso "efeito n+1" 5 - Aprenda os truques da JPQL e domine as consultas da JPA 5.1 - Esqueça SQL! Abuse da JPQL 5.2 - Parâmetros com JPQL 5.3 - Navegações nas pesquisas 5.3.1 - Join 5.3.2 - Faça ordenações 5.3.3 - Navegando pelos relacionamentos 5.4 - Funções Matemáticas 5.4.1 - Calculando mínimos e máximos 5.4.2 - Contando resultados 5.4.3 - Outras funções: MOD, SQRT e AVG 5.5 - Funções String 5.6 - Agrupadores - group by e having 5.7 - Condições para comparações 5.7.1 - Restrinja pesquisas por uma lista com o IN 5.7.2 - Evite repetições com DISTINCT 5.7.3 - Listas e valores vazios com EMPTY e NULL 5.7.4 - Pesquise por intervalos com BETWEEN 5.7.5 - Busca por trechos de texto com LIKE 5.7.6 - Verifique se um elemento existe com o MEMBER OF 5.7.7 - Operações em listas com EXISTS, ANY, SOME e ALL 5.7.8 - Use CONCAT para concatenar Strings 5.7.9 - Verifique a posição de um texto com o LOCATE 5.7.10 - Identifique o tamanho de listas com o SIZE 5.8 - Trabalhando com data e hora atual 5.9 - Buscando apenas um resultado na consulta 5.10 - Criando objetos com o retorno de consultas 6 - Alternativas às consultas: Named Queries e Queries nativas 6.1 - Organizando consultas com NamedQuery 6.2 - Quando há algo muito específico, utilize Query nativa 6.3 - Devolva resultados complexos com queries nativas 7 - Entenda as queries programáticas com Criteria 7.1 - A Criteria mais simples do Hibernate 7.2 - EasyCriteria 8 - Recursos avançados com a JPA 8.1 - Não deixe os resultados da consulta em memória 8.1.1 - Otimização com EJB 8.1.2 - Otimização com Spring 8.1.3 - Java SE ou transação manual 8.2 - Paginação de consultas 8.3 - Operações em muitos registros - Bulk Operations 8.4 - Tratamento de concorrência 8.4.1 - Read Committed 8.4.2 - Aplicando o Lock 8.4.3 - Lock Otimista 8.4.4 - Lock Pessimista 9 - Finalizando
From the B&N Reads Blog

Customer Reviews