High-Performance Java Persistence – Chapter 12 – Inheritance

Part 2, Chapter 12

Every new chapter of my book is released right after it’s being completed, so the reader doesn’t have to wait for the whole part to be finished to get access to new material.

Table of content

This chapter explains JPA inheritance from a data access performance point of view.

12. Inheritance
12.1 Single table 
12.2 Join table 
12.3 Table-per-class 
12.4 Mapped superclass 

Chapter summary

Inheritance is undoubtedly the most obvious impedance mismatch between an object-oriented domain model and a relational database schema. This chapter explains the benefits of entity inheritance and its inherent trade-offs.

As a rule of thumb, inheritance should be used with care.

Most often, when polymorphic queries and associations are needed, the choice is between single table and joined table, each one having pluses and minuses. Table-per-class can generate statements that are way too complex, and if entity polymorphism is not needed, the @MappedSuperclass might be a better alternative anyway.

Enjoy reading it and I’m looking forward to getting your feedback.

Enter your email address to follow this blog and receive notifications of new posts by email.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s