4 votes

Séquence JPA pour le numéro de série

Je me demande s'il existe un moyen propre (ou natif) de générer une séquence pour une table, afin de l'utiliser comme un numéro de série. Elle doit être consécutive (1, 2, 3 ...etc), et éviter tout problème de course/transaction (si plusieurs utilisateurs essaient de persister en même temps). Il n'est pas nécessaire que ce soit la clé primaire.

   @Id
    private Long id;

    private Long serialNumber;

Merci.

2voto

Pascal Thivent Points 295221

Je me demande s'il existe un moyen propre (ou natif) de générer une séquence pour une table, afin de l'utiliser comme un numéro de série.

A ma connaissance, non, pas pour une personne qui n'a pas de diplôme. Id champ.

Mais vous pourriez utiliser une entité dédiée avec la stratégie de génération appropriée et persister une nouvelle instance lorsque cela est nécessaire pour obtenir l'identifiant suivant.

Une autre option serait de simuler une stratégie de générateur de TABLE et d'utiliser le SQL natif pour y lire l'identifiant suivant et l'incrémenter.

1voto

Julio Faerman Points 2674

@id @Valeur générée(stratégie=IDENTITÉ) ?

1voto

DataNucleus Points 12361

DataNucleus prend en charge l'utilisation de @GeneratedValue sur les champs non Id.

0voto

sdbreadman Points 7

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X