Speaker Details

Simon Martinelli
72 Services LLC
Simon Martinelli is the owner of 72 Services LLC and has been working as a software architect, developer, consultant, and trainer for 28 years, especially in the Java Enterprise environment.His current interest is increasing the efficiency of full-stack development with Java. Due to his commitment to the Vaadin/Hilla environment, he received the Vaadin Community Award. He regularly shares his knowledge in articles, speaks at international conferences, and writes his blog: https://martinelli.chBesides his work, he has been a lecturer at the Bern University of Applied Sciences for modern architecture and integrating distributed systems and persistence technologies with Java since 2007. And he is an expert group member of JSR-352 Java Batch and JSR-354 Money and Currency.
Projects often use Java Persistence API (JPA) by default and, thus, mostly Hibernate. But do all applications need a comprehensive object/relational mapping (ORM) with all conceivable functions?
This talk examines the architecture of database-centric applications and discusses whether you always need an object graph for persistence.
An example application shows 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 and JPA/Hibernate and thus using the best of both worlds is discussed.
More
SQL was never meant to be abstracted. To be confined in the narrow boundaries of heavy mappers, hiding the beauty and simplicity of relational data. SQL was never meant to be object-oriented. SQL was never meant to be anything other than… SQL! - Lukas Eder, the creator of jOOQ.
In this session, we will explore the best way to use the power of SQL in Java applications. While JPA/Hibernate is a popular choice, it is essential to critically evaluate other frameworks like jOOQ, which, in many scenarios, can offer a superior fit.
Join me in this deep dive as we efficiently utilize jOOQ with Spring Boot, Flyway, and Testcontainers to access SQL databases seamlessly. Throughout the session, you will gain practical knowledge on:
  • Setting up jOOQ with Spring Boot or Quarkus, Flyway, and Testcontainers
  • Leveraging the jOOQ DSL for building SQL queries effortlessly
  • Generating the metamodel for writing type-safe queries, ensuring robustness
  • Executing queries and effectively processing results, including handling nested Java Records and multisets
  • Leveraging stored procedures and functions within your application
  • Incorporating transactions to maintain data integrity
  • Unveiling the mechanics of jOOQ's Spring Boot auto-configuration
  • Exploring the seamless integration of jOOQ with JPA, combining the best of both worlds
Unlock the full potential of SQL integration in Java by embracing jOOQ, a framework designed to unleash relational data's true power and elegance. Don't miss this opportunity to improve your database access skills.
More