Joined Subclass Inheritance Mapping Strategy

Each entity class is mapped to its own primary table. Each primary table has a reference key referring to a primary table of its parent class except for the primary table of the root class. The reference key should join on the primary key of the primary table.



  1. Define class mappings for each class in the hierarchy. Each class is mapped to its own primary table.
  2. Define identifier mapping in the root class.
  3. Define attribute mappings or association mappings for each class.
  4. Define persistence generation type for each class.
  5. Define persistence generation type of all the classes as Generate table.