Skip to content
Thorben Janssen
  • BlogExpand
    • Tutorials
    • Hibernate Tips
    • Video Tutorials
  • Persistence Hub
  • Workshops
  • Consulting
  • Book
  • AboutExpand
    • About
    • Talks
    • Contact
Sign In
Thorben Janssen

JPA2.1

  • How to call custom database functions with JPA and Hibernate
    JPA | Hibernate Performance | JPA2.1

    How to call custom database functions with JPA and Hibernate

    ByThorben Janssen

    JPA supports a set of database functions which you can use to perform small operations and transformations within a query. This is often easier and faster than doing it in the Java code. But how do you call functions which are not supported by the JPA standard, like database-specific ones or the custom functions implemented…

    Read More How to call custom database functions with JPA and HibernateContinue

  • JPA | Hibernate Performance | JPA2.1 | Promo

    Free Mini Course: How to find and fix n+1 select issues with Hibernate

    ByThorben Janssen

    Loading related entities with JPA and Hibernate is a comfortable feature that is also the most common reason for performance issues. In most applications you can find one of these two issues: related entities are eagerly loaded, even if they are not needed or related entities are lazily loaded which creates n+1 select issues if…

    Read More Free Mini Course: How to find and fix n+1 select issues with HibernateContinue

  • Unsynchronized PersistenceContext – How to model conversations with JPA
    JPA | Hibernate Advanced | JPA2.1

    Unsynchronized PersistenceContext – How to model conversations with JPA

    ByThorben Janssen

    Most Java EE applications are stateless and there are good reasons for it. But not all user interactions can be implemented in that way. Sometimes you need to model a conversation that consists of multiple steps, like the typical shopping cart or complex update operations. Doing this with JPA 2.0 always felt a little bit…

    Read More Unsynchronized PersistenceContext – How to model conversations with JPAContinue

  • How to define named queries at runtime with JPA 2.1
    JPA | Hibernate Performance | JPA2.1

    How to define named queries at runtime with JPA 2.1

    ByThorben Janssen

    Defining a static named query via the @NamedQuery annotation is the most common way in JPA. It has the main advantage that the persistence provider can compile and validate the query at start-up time. But you also have to define the query statically at compile time. OK, you can still define a dynamic query at runtime but how do you…

    Read More How to define named queries at runtime with JPA 2.1Continue

  • Generate database schema with JPA
    JPA | Hibernate Advanced | JPA2.1

    Generate database schema with JPA

    ByThorben Janssen

    Your entity classes map a database schema, which must be created before or during application startup. You can do this in various ways. You can run your own scripts, use tools like Flyway or Liquibase, or use the schema generation feature defined by the Jakarta Persistence specification (JPA). In this article, you will learn how…

    Read More Generate database schema with JPAContinue

Page navigation

Previous PagePrevious 1 2 3 4 5 Next PageNext

Join the Newsletter

Join 10k+ subscribers to get a persistence tip every weekday.

I will collect, use and protect your data in accordance with my privacy policy.

Level up your skills!

  • In-depth courses
  • Expert sessions
  • Monthly persistence news
Learn more!
Twitter YouTube Github Facebook Xing Linkedin
  • Disclaimer
  • Privacy Policy
  • Terms of Service
  • Imprint
  • Contact
  • Change privacy settings
  • Privacy settings history
  • Revoke consents

© 2025 Thorben Janssen, all rights reserved.

  • Blog
    • Tutorials
    • Hibernate Tips
    • Video Tutorials
  • Persistence Hub
  • Workshops
  • Consulting
  • Book
  • About
    • About
    • Talks
    • Contact
Search