High-Performance Java Persistence Newsletter, Issue 1
Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Wouldn’t that be just awesome?
Well, Hypersistence Optimizer is that tool! And it works with Spring Boot, Spring Framework, Jakarta EE, Java EE, Quarkus, or Play Framework.
So, enjoy spending your time on the things you love rather than fixing performance issues in your production system on a Saturday night!
Introduction
I started my newsletter in November 2015, and every time I was publishing a new article, I would send it to my newsletter subscribers as well.
This year, I decided to change the format of my newsletter. Instead of creating a new issue for every article, the newsletter will now contain links to the best articles I read over the past two weeks.
Articles
The pick of this edition comes from Za’e Johnson, who wrote the PostgreSQL highlights of 2019. This article contains many interesting links, which if you’re using PostgreSQL, you should definitely read them.
Rick Branson wrote a very interesting article showing how you can share an SQLite database across multiple containers to provide access to application configuration data.
The Hibernate ResultTransformer
offers a very powerful mechanism of changing the result set of a given query. While the default ResultTransformer
interface cannot be used as a functional interface, I decided to create the ListResultTransformer
, which is now available in the Hibernate Types project. For more details about the ListResultTransformer
, check out this article.
Marco Behler wrote a very good overview of Java data access technologies, ranging from JDBC to JPA, Hibernate, and jOOQ.
Franck Pachot, an Oracle ACE and DBA at CERN, wrote a short guide that can help [Oracle DBAs get a better understanding of Hibernate.
While the Hibernate Types project has been supporting PostgreSQL arrays for a long time, multidimensional arrays require an adjustment that came with the 2.9 release. For more details about how you can map multidimensional arrays with JPA and Hibernate, then check out this article.
Project releases
The 2.9 release of the Hibernate Types project adds support for multidimensional arrays, List
to database array mapping, ListResultTransformer
, MapResultTransformer
, Date
and Timestamp
arrays.
The Hibernate ORM 6.0.0 Alpha 4 version has been released. If you are curious about the new changes coming in Hibernate 6, then you should definitely check it out.

Get in touch with my latest articles!
StackOverflow Answers
The following StackOverflow answers have been trending over the past two weeks:
- Why to use the Hibernate
Query
addScalar
method? - When to use
EntityManager
find
vs.getReference
with JPA - What is the difference between JOIN and JOIN FETCH when using JPA and Hibernate
- What is the solution for the N+1 issue in JPA and Hibernate?
- How to handle JPA ObjectOptimisticLockException properly for multiple simultaneous transaction requests?
Funny
I loved this tweet from Peter Zaitsev, which contains a Programmer Translation Guide.