Il existe deux types de classes dans Hibernate, les classes d'entité (entity classes) et les classes de type de valeur (value type classes). Les classes d'entité ont leur propres identité de base de données, fichiers de correspondances et cycles de vie, alors que les classes de type de valeur en sont dépourvues. Les classes de type de valeur dépendent des classes d'entité. Les classes de type de valeur sont également appelées classes de composant.
Hibernate utilise des fichiers de correspondances pour définir les métadonnées de correspondance. Chaque fichier de correspondance <Class>.hbm.xml peut contenir des métadonnées pour une ou plusieurs classes. PowerAMC utilise la stratégie de regroupement suivante :
Un fichier de correspondances distinct est généré pour chaque classe d'entité qui n'est pas une hiérarchie d'héritage.
Un fichier de correspondances distinct est généré pour chaque hiérarchie d'héritages dotée d'une stratégie de correspondance unique. Toutes les correspondances des sous-classes sont définies dans le fichier de correspondance. Le fichier de correspondance est généré pour la classe racine de la hiérarchie. Reportez-vous à la sectionDéfinition des correspondances d'héritage Hibernate pour plus de détails sur la définition de la stratégie de correspondance.
Aucun fichier de correspondance n'est généré pour une classe de type valeur unique qui n'appartient pas à une hiérarchie d'héritage. Sa correspondance est définie dans le fichier de correspondance de son propriétaire.