Pro JPA 2. Mastering the Java Persistence API
Buy it now
One Minute Bottom Line
|The best JPA 2 book I ever have seen. Presents JPA 2 in a provider-neutral manner, very clearly and comprehensively but at the same time reasonably concise. For beginners should be accompanied by some book specific for JPA provider in use.|
The book presents JPA 2 in very comprehensive, but at the same time, rather concise manner (a very hard feat).
I am usually wary of the second editions intended to incorporate revised specification/standards - way too often they are still books on the original version of standards with small xenogenic speckles of a new info. Fortunately, it is not the case with Pro JPA 2! It is really re-written to become a true JPA 2 book (but nevertheless new JPA 2 features are clearly marked as such).
The one of main advantages of the book is that it quite thoroughly presents not only the Java side of the story, but also the related database structures. It does not forget to explain why they are this way. It is especially useful for "pure Java" developers coming to ORM world.
Another major plus point - the book not only praises JPA 2 enhancement but points to the specification areas that still are missing or are underspecified as well as to areas that intentionally left provider-dependent.
And the book comes with a free surplus - a brief but good introduction into EJB 3/3.1.
Yes, there are a few drawbacks, but they are relatively minor:
- The "Class Representation" part of the impedance mismatch explanation (in chapter 1) rather shows not genuine ORM impedance mismatch, but mismatch between a well designed class and a poorly designed DB schema. Anyhow 2 other parts - "Relationships" and "Inheritance" - of the same impedance mismatch explanation are excellent.
- Chapter10, "Advanced Object-Relational Mapping"is less readable than other parts of the book.
- The index is somewhat broken - but many recent APRESS books suffer from this problem, maybe APRESS better look for a new indexing provider.
I intended to mention one additional drawback - the absence of a consolidated "What new in JPA 2" section. Fortunately I discovered recently that one of the book authors is preparing JPA 2 DZone Refcard covering for this absence (to be published soon).
So, from my point of view this book is a must to anyone new to JPA or migrating from JPA 1 to JPA 2 - regardless of JPA provider used (Hibernate, EclipseLink, whatever ...). But on the other side, you would need to consult elsewhere for the provider-specific info and configuration.
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)