Resources
Books
[DDD] Eric Evans. Domain-Driven Design, Addison-Wesley Professional, 2003.
[HPJP] Vlad Mihalcea. High Performance Java Persistence, Leanpub, 2017. Book site
[JAA] Kirk Knoernschild. Java Application Architecture: Modularity Patterns with Examples Using OSGi, Prentice Hall, 2012.
[JP] Charlie Hunt, Binu John. Java Performance, Addison-Wesley, 2012.
[JPDG] Scott Oaks. Java Performance: The Definitive Guide, O’Reilly, 2014.
[JPspec] Java Persistence 2.2 Expert Group. JSR 338: JavaTM Persistence API, Version 2.2, Oracle, 2017. Download
[JPspec21] Java Persistence 2.1 Expert Group. JSR 338: JavaTM Persistence API, Version 2.1, Oracle, 2013. Download
[PoEAA] Martin Fowler. Patterns of Enterprise Application Architecture, Addison-Wesley, 2002.
[ProJPA2] Mike Keith, Merrick Schincariol. Pro JPA 2, Apress Media, LLC, 2013.
[SData] Mark Pollack, Oliver Gierke, Thomas Risberg, Jon Brisbin, and Michael Hunger. Spring Data, O’Reilly Media, Inc., 2011.
[SQLPE] Markus Winand. SQL Performance Explained, 2012. Book site
Online articles, blogs
- Ted Neward’s The Vietnam of Computer Science, well-argued longer post about troubles with ORM
- Martin Fowler’s stand on ORM Hate
- ORM is an anti-pattern, one of those reasonable blog posts on the topic
- Flush and Clear: O/R Mapping Anti-Patterns
- The OpenSessionInView Antipattern
- The Open Session In View Anti-Pattern
- A beginner’s guide to JPA and Hibernate Cascade Types
- Martin Fowler’s Anemic Domain Model
- JPA 2.1 – 12 features every developer should know
- Transaction strategies: Understanding transaction pitfalls
- Spring, Data access with JDBC, JdbcTemplate
- Uncle Bob’s Make the Magic go away
- My own JPA related blog posts: https://virgo47.wordpress.com/tag/jpa
Other online resources
- Querydsl: http://www.querydsl.com/
- EclipseLink: http://www.eclipse.org/eclipselink/
- Hibernate ORM: http://hibernate.org/orm/
- DataNucleus: http://www.datanucleus.org/
- jOOQ: http://www.jooq.org
- H2 database: http://h2database.com
- Groovy, Working with a relational database