Création de clés primaires pour une entité JPA

Avant d'utiliser le gestionnaire d'entités pour rendre une entité JPA persistante, vous devez créer une clé primaire pour l'entité.

Pourquoi et quand exécuter cette tâche

Si vous disposez d'une implémentation JPA DAO qui étend AbstractJPAEntityDaoImpl, vous pouvez utiliser myJPADao.generatePrimaryKey("MyTable") pour générer la clé primaire de votre nouvelle entité JPA. Si votre implémentation JPA DAO n'étend pas AbstractJPAEntityDaoImpl, vous pouvez utiliser ECKeyManager.singleton().getNextKey("MyTable") pour générer une clé primaire pour votre nouvelle entité JPA.

Procédure

Créez une entrée dans la table KEYS. Ce qui suit est une instruction SQL d'exemple pour effectuer l'entrée dans la table KEYS.

insert into KEYS (TABLENAME, COUNTER, KEYS_ID) 
   values ("table_name", 0, 1)

Notez qu'avec l'instruction SQL précédente, les valeurs par défaut pour les autres colonnes de la table KEYS sont acceptées. La valeur COUNTER indique la valeur à laquelle le compte doit démarrer. La valeur pour KEYS_ID doit être n'importe quelle valeur positive.

Si votre clé principale est définie comme un type de données long
  • DB2 BIGINT
  • OracleNUMBER(38, 0))
utiliser la méthode getNextKeyAsLong.