[hibernate] ManyToOne bidirectionnel
Bonjour.
J'ai un petit soucis de mapping avec les annotations hibernate:
J'ai un lien A 1<------->n B
Donc bidirectionnel
Dans ma classe A j'ai :
Code:
1 2 3 4
| @OneToMany(mappedBy="a")
public List<B> getBs() {
return Bs;
} |
Et dans B :
Code:
1 2 3 4 5 6 7 8
|
@ManyToOne(cascade = CascadeType.ALL, targetEntity= A.class)
@JoinTable(name = "a_b",
joinColumns = { @JoinColumn(name = "idB") },
inverseJoinColumns = { @JoinColumn(name = "idA") })
public A getA() {
return this.a;
} |
Quand je teste ce mapping, je peux sauver les relations de B vers A, elles sont bien dans ma table de lien a_b:
Code:
1 2 3
| A objetA = new A("objetA");
B objetB = new B("objetB");
B.setA(objetA ); |
Si je tente de sauver les liens A vers B je n'ai aucune exception mais seul les objets objetA et objetB sont sauvés, les liens n'apparaissent pas dans ma table de jointure a_b :?
Code:
1 2 3 4 5
| A objetA = new A("objetA");
List<B> listB = new ArrayList<B>();
B objetB = new B("objetB ");
listB .add(objetB );
objetA.setBs(listB ); |
Y a-t-il une annotation qui me manque pour indiquer la relation bidirectionnelle?
Merci pour votre aide.
Benoit