About the Book
ORM is a neat idea, typically used together with rich domain model. JPA, currently in version 2.2, is a Java specification that is a common ground for most Java ORMs. But ORM is also a love-hate topic, with stickers like "Vietnam of computer science", often called an antipattern.
In this book we'll talk about many interesting JPA aspects and put them into the context of other persistence options. I'll also try to explore how to use JPA for queries that are more SQL friendly, but still benefiting from convenient features not available with plain old JDBC. We will discuss non-JPA feature called entity (or ad-hoc) joins - supported by both EclipseLink and Hibernate. We'll also cover some typical problems (lazy loading and related N+1 select).
Querydsl will be with us along the way, because compared to Criteria API it allows us to write much cleaner queries in a fluent API fashion.
About the Author
Software developer since forever, professionally since 2000. Very familiar with Java ecosystem, but open to learning new languages and technologies as I don’t believe in narrow specialization. I like the idea of an agile and learning environment (like Joy, Inc.). I also believe in testing automation, continuous delivery, clean code and also other, often rather peopleware-ish topics. I'm exploring functional programming and domain-driven design, among others.