Автор оригинала: Vlad Mihalcea.
Каждая новая глава моей книги выходит сразу после ее завершения, поэтому читателю не нужно ждать, пока вся часть будет закончена, чтобы получить доступ к новому материалу.
В этой главе объясняется наследование JPA с точки зрения производительности доступа к данным.
12. Inheritance 12.1 Single table 12.2 Join table 12.3 Table-per-class 12.4 Mapped superclass
Наследование, несомненно, является наиболее очевидным несоответствием импеданса между объектно-ориентированной моделью предметной области и схемой реляционной базы данных. В этой главе объясняются преимущества наследования сущностей и присущие ему компромиссы.
Как правило, наследование следует использовать с осторожностью.
Чаще всего, когда требуются полиморфные запросы и ассоциации, выбор делается между одной таблицей и объединенной таблицей, каждая из которых имеет свои плюсы и минусы. Таблица для каждого класса может генерировать слишком сложные операторы, и если полиморфизм сущностей не требуется, @MappedSuperclass
в любом случае может быть лучшей альтернативой.