
Li 50 páginas desse livro em menos de 1 hora, isso levando em conta o entendimento dos códigos de exemplos. Sim, é um livro focado em didática e que passei a recomendar para quem quer iniciar a usar uma ferramenta de ORM baseada nas regras do JPA ou pra quem quer rever alguns conceitos e aprender algumas boas dicas.
Falando um pouco sobre o que aprendi e reaprendi durante a leitura, Hébert inicia explicando que JPA nada mais é do que um conjunto de regras e normas que especificam o comportamento dos ORMs através de interfaces pré-definidas. Segue abaixo algumas vantagens do JPA listados pelo livro.
- Eliminação de Verbosidade.
- Portabilidade entre Bancos de Dados.
- Tratamento de Acesso Simultâneo.
- Acesso às Funções.
Hibernate, OpenJPA e EclipseLink são alguns dos frameworks mais famosos que implementam essas regras e normas de forma válida, apesar de não necessariamente implementarem todas e de algumas vezes terem recursos a mais dos que são definidos pela JPA. Sim, não é necessário que todo o JPA seja implementado assim como não é necessário que só as pré-definições estejam no framework. Por isso, é comum que encontremos algumas funcionalidade que existem no Hibernate mas que não estão implementadas no EclipseLink, por exemplo.
Todo framework baseado no JPA possui duas maneiras de realizar algumas configurações, via annotations ou através de arquivos XML. Hébert deixa um alerta bem interessante para as vantagens de um e de outro durante os primeiros capítulos e que podem passar depercebidos no meio de muitas outras informações que o livro traz. O uso de annotations é mais produtos e elam aumentam a portabilidade de seu código entre frameworks (e.g. do OpenJPA para EclipseLink), já que todos possuem as mesmas annotations apesar do risco já comentado de nem todos terem implementado. O uso XML permite que o desenvolvedor altere configurações sem ter que realizar um novo deploy da aplicação. Por exemplo, a mudança do nome de uma coluna no banco de dados é facilmente repercutida em um arquivo XML do ORM e tudo passará a funcionar corretamente, sem precisar recompilar todo o projeto.Hibernate,
Em breve falarei um pouco mais sobre esse livro…