Defining EJB 3 Inheritance Mappings

EJB 3 persistence supports all three popular inheritance mapping strategies and also mixed strategies.

All classes in the class hierarchy should be either Entity classes or Mapped superclasses. For each class hierarchy, the primary identifier must be defined on the Entity class that is the root of the hierarchy or on a mapped superclass of the hierarchy.

You can optionally define a Version attribute on the entity that is the root of the entity hierarchy or on a Mapped superclass of the entity hierarchy.