Projects often use the Java Persistence API (JPA) by default, and thus mostly Hibernate. But do all applications need a comprehensive object-relational mapping (ORM) with every conceivable function? This talk discusses the architecture of database-centric applications and discusses whether you always need an object graph for persistence. Using an example application, it’s shown how pure SQL, with the help of jOOQ and (nested) Java Records, simplifies data access and how common ORM problems such as the n+1 select problem can be avoided. Finally, the possibility of combining jOOQ with JPA/Hibernate to leverage the best of both worlds is discussed.
https://reg.rf.oracle.com/flow/oracle/javaone26/catalog/page/catalog/session/1761287244800001b3We


