Giriş
Birbirleri ile çift taraflı (unidirectional) ilişkisi olan sınıflarda kullanılır. Infinite Recursion problemini çözer. Açıklaması şöyle
One tarafına @JsonManagedReference yazılır. Many tarafına ise @JsonBackReference yazılır.
Örnek
Şöyle yaparız.
Birbirleri ile çift taraflı (unidirectional) ilişkisi olan sınıflarda kullanılır. Infinite Recursion problemini çözer. Açıklaması şöyle
Şöyle düşünmek daha kolayıma geliyor. OneToMay ilişki olsun.For avoiding the problem, linkage is handled such that the property annotated with @JsonManagedReference annotation is handled normally (serialized normally, no special handling for deserialization) and the property annotated with @JsonBackReference annotation is not serialized; and during deserialization, its value is set to instance that has the "managed" (forward) link.
One tarafına @JsonManagedReference yazılır. Many tarafına ise @JsonBackReference yazılır.
Örnek
Şöyle yaparız.
private class Player {
public int id;
@JsonManagedReference
public Info info;
}
private class Info {
public int id;
@JsonBackReference
public Player parentPlayer;
}
Hocam elinize saglik.
YanıtlaSilPlayer icindeki info nesnesi collection olmayacak mi?
Aslında unidirectional herhangi bir ilişkide bu anotasyon kullanılabilir. Örnekte OneToOne ilişki var. Ben hatırlaması kolay olsun diye OneToMany gibi düşünüyorum :)
YanıtlaSil