Ce que j'essaie de réaliser est de générer un UUID qui est automatiquement attribué lors d'une insertion de base de données. Similaire à la colonne de clé primaire nommée "id" générant une valeur id.
Les valeurs du modèle ressemblent à ceci:
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(nullable = false)
private Long id;
@GeneratedValue(generator = "uuid2")
@GenericGenerator(name = "uuid2", strategy = "uuid2")
@Column(name = "uuid", columnDefinition = "BINARY(16)")
private UUID uuid;
Mais lorsque l'insertion de la base de données est terminée. le "uuid" est vide.
L'aide est grandement appréciée. Et si je pose une question stupide évidente, je suis désolé.
u pourrait utiliser certains événements comme @PrePersist pour remplir le champ UUID https://docs.jboss.org/hibernate/orm/4.0/hem/en-US/html/listeners.html
mais pourquoi ne pas assigner uuid quand l'objet est créé uuid = UUID.randomUUID ()?
Peux-tu essayer?
@Id
@GeneratedValue(generator = "uuid2")
@GenericGenerator(name = "uuid2", strategy = "org.hibernate.id.UUIDGenerator")
@Column(name = "id", columnDefinition = "VARCHAR(255)")
private UUID id;