PostgreSQL SERIAL column and Hibernate IDENTITY generator

Introduction When using PostgreSQL, it’s tempting to use a SERIAL or BIGSERIAL column type to auto-increment Primary Keys. However, this article will show you that this is not a very good idea when using JPA and Hibernate.

How to customize the JSON Serializer used by Hibernate-Types

Introduction As already explained, the hibernate-types open-source project allows you to map JSON, ARRAY, PostgreSQL ENUM types and provides a simple way of adding immutable Hibernate Types. After adding support for customizing the Jackson ObjectMapper, the next most-wanted issue was to provide a way to customize the JSON serializing mechanism. In this article, you are going to see how you can customize the JSON serializer using hibernate-types.

How to use a JVM or database auto-generated UUID identifier with JPA and Hibernate

Introduction In this article, we are going to see how to use a UUID entity identifier that is auto-generated by Hibernate either in the JVM or using database-specific UUID functions. Our Post entity looks as follows: The Post entity has a UUID identifier and a title. Now, let’s see how we can map the Post entity so that the UUID identifier be auto-generated for us.

How to use database-specific or Hibernate-specific features without sacrificing portability

Introduction Like other non-functional requirements, portability is a feature. While portability is very important when working on an open-source framework that will be used in a large number of setups, for end systems, portability might not be needed at all. This article aims to explain that you don’t have to avoid database or framework-specific features if you want to achieve portability.

How to customize the Jackson ObjectMapper used by Hibernate-Types

Introduction As already explained, the hibernate-types open-source project allows you to map JSON, ARRAY when using JPA and Hibernate. Since I launched this project, one of the most wanted feature was to add support for customizing the underlying Jackson ObjectMappper, and since version 2.1.1, this can be done either declaratively or programmatically. In this article, you are going to see how do customize the ObjectMappper when using the hibernate-types project.

New Video Course