Hibernate:Relation un-à-un unidirectionnelle : Différence entre versions

De WIKI.minetti.org
Aller à : navigation, rechercher
(Page créée avec « == But == Lier deux objets '''A''' et '''B''': * L'objet '''A''' ne comporte aucun lien vers l'objet '''B''', mais chaque objet '''A''' est lié à un objet '''B'''; * L'... »)
 
(Aucune différence)

Version actuelle en date du 7 avril 2016 à 17:19

But

Lier deux objets A et B:

  • L'objet A ne comporte aucun lien vers l'objet B, mais chaque objet A est lié à un objet B;
  • L'objet B est lié à un objet A.

Pour obtenir une relation un-à-un, les objets A et B auront les mêmes identifiants.

Diagramme de classe

TODO

Tables

TODO

Annotations

Relation de la classe B:

@Id
@OneToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "ID", nullable = false)
@ForeignKey(name = "FK_B_A")
private A relationA;

ou bien:

@Id
private Integer id;

@OneToOne(fetch = FetchType.LAZY)
@PrimaryKeyJoinColumn()
@MapsId()
private A relationA;