Super annotation ou partage de declaration JPA
Bonjour et bonne année à tous :),
Dans notre projet, nous utilisons une sequence unique pour nos differentes entitées JPA.
Nous avons donc un code similaire à celui pour une entité:
Code:
1 2 3 4 5
| @Id
@TableGenerator(name = "sequence_generator", table = "SEQUENCE_TABLE", pkColumnName = "NAME", valueColumnName = "NEXT_ID ", pkColumnValue = "GLOBAL", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.TABLE, generator = "sequence_generator")
@Column(name = "user_id")
private Long id; |
Il est tout a fait possible de reporter les 3 annotations (@Id, @TableGenerator et @GeneratedValue) sur les différentes entités cela devrait marcher sans problème.
N'est-il toutefois pas possible de soit :
- déclarer le table generator une fois pour toute et qu'il soit utilisable par toutes les entités sans le redeclarer
- définir une "super" annotation qui permettrait de cumuler les 3 annotations (ex : @Id_FromGlobalSeq)
Merci d'avance