Vlad Mihalcea

Hibernate Application Performance Tuning

Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Hypersistence Optimizer is that tool!

Introduction

Because performance tuning is very important when it comes to developing a data access layer, in this article, I’m going to show you how you can optimize the famous Hibernate Caveat Emptor application using Hypersistence Optimizer.

The Caveat Emptor application was created by Christian Bauer and Gavin King for the Hibernate in Action book they published in 2004 and was included in both the first and second editions of the well-known Java Persistence with Hibernate book.

Read More

High-Performance Java Persistence Newsletter, Issue 27

Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Hypersistence Optimizer is that tool!

Introduction

Welcome to a new issue of the High-Performance Java Persistence Newsletter in which we share articles, videos, workshops, and StackOverflow answers that are very relevant to any developer who interacts with a database system using Java.

Read More

Use Hibernate Dynamic Update for JSON properties

Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Hypersistence Optimizer is that tool!

Introduction

In this article, I’m going to explain why you should always use the Hibernate Dynamic Update feature for entities that map JSON properties.

Since Hibernate ORM does not offer support for JSON column types, we are going to use the Hibernate Types library, which provides a JsonType that allows you to map String, Map, List, JsonNode, Java Records, or POJOs on JSON columns, no matter if you are using PostgreSQL, MySQL, Oracle, SQL Server, or H2.

Read More

20 years of Hibernate

Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Hypersistence Optimizer is that tool!

Introduction

20 years of Hibernate and counting.

On the 23rd of May 2001, Gavin King launched the first version of Hibernate. Twenty years later, Hibernate is one the most successful Java data access frameworks, having millions of developers using it on a per-daily basis.

20 years of Hibernate

Read More

JPA Entity Graph

Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Hypersistence Optimizer is that tool!

Introduction

In this article, I’m going to explain how you can fetch an entity association using a JPA Entity Graph and how you can build it either declaratively or programmatically.

Read More

SQL Server Foreign Key Locking

Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Hypersistence Optimizer is that tool!

Introduction

In this article, we are going to see how SQL Server Foreign Key constraints are locking the parent record when executing a child record UPDATE.

This situation is specific to SQL Server and happens even when using the Read Committed Snapshot Isolation level.

Read More

High-Performance Java Persistence Newsletter, Issue 26

Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Hypersistence Optimizer is that tool!

Introduction

Welcome to a new issue of the High-Performance Java Persistence Newsletter in which we share articles, videos, workshops, and StackOverflow answers that are very relevant to any developer who interacts with a database system using Java.

Read More

How to index JSON columns using MySQL

Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Hypersistence Optimizer is that tool!

Introduction

In this article, I’m going to explain how we can index JSON columns when using MySQL.

While other relational database systems provide GIN (Generalized Inverted Index) indexes, MySQL allows you to index a virtual column that mirrors the JSON path expression you are interested in indexing.

Read More

Clustered Index

Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Hypersistence Optimizer is that tool!

Introduction

In this article, we are going to see what a Clustered Index is and why it’s very important to understand how tables are organized when using a relational database system.

Read More

SQL Server JDBC – Set sendStringParametersAsUnicode to false

Imagine having a tool that can automatically detect JPA and Hibernate performance issues. Hypersistence Optimizer is that tool!

Introduction

In this article, I’m going to explain why you should always disable the sendStringParametersAsUnicode default JDBC Driver setting when using SQL Server.

Read More