Regroupement séquentiel pour la persistance gérée par conteneur dans les modules EJB assemblés
Après avoir assemblé un module EJB (Enterprise JavaBeans) contenant des beans CMP (Container Managed Persistence, persistance gérée par conteneur), vous pouvez éviter que certains types d'exceptions liées à la base de données ne se produisent en phase d'exécution de l'application. Le groupement par séquence vous permet d'indiquer l'ordre dans lequel les beans entity mettent à jour les tables des bases de données relationnelles.
Elimination des exceptions résultant des violations de l'intégrité référentielle
- Les opérations de création et de suppression des beans entity sont associées directement à la base de données lors d'un appel de méthode.
- Les modifications de bean entity sont mises en cache par le conteneur EJB jusqu'à ce qu'une méthode finder soit appelée ou que la transaction se termine.
La seule manière de garantir une séquence de persistance conforme aux règles d'administration de l'intégrité référentielle est de désigner la séquence, ce que vous effectuez dans l'éditeur de descripteur de déploiement d'EJB, compris dans l'outil d'assemblage. La fonction de groupement par séquence permet d'affecter des beans à des groupes CMP. Vous devez définir, dans chaque groupe, l'ordre dans lequel le gestionnaire de persistance insère des beans dans la base de données pour effectuer des mises à jour sans violer l'intégrité référentielle.
Pour des instructions détaillées sur la désignation des groupes de séquences, voir la rubrique Définition de l'environnement d'exécution des groupes de séquence pour la persistance gérée par conteneur. Consultez votre administrateur de base de données sur les règles d'intégrité référentielle que vous devez respecter pour effectuer des synchronisations.
Réduction des risques d'exception pour les schémas de contrôle des accès concurrents optimiste
- Lorsque des transactions concurrentes tentent de verrouiller la même ligne de table, la base de données se bloque.
- Les transactions peuvent être effectuées dans un ordre qui viole la logique applicative.
Utilisez la fonction de groupement par séquence pour séquencer la persistance des beans et permettre ainsi de prévenir ces scénarios.