我有两个实体:
@JsonIdentityInfo(
generator = ObjectIdGenerators.PropertyGenerator.class,
property = "numeroOfferta")
@Entity
@Table(name=DatabaseConstants.TABELLA_OFFERTE)
public class Offerta {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private BigInteger numeroOfferta;
@ManyToOne(fetch=FetchType.EAGER)
private Cliente cliente;
private Double importoOfferta;
@OneToMany(fetch = FetchType.EAGER, mappedBy = "offerta")
private Set<Ordine> ordini;
和
@JsonIdentityInfo(
generator = ObjectIdGenerators.PropertyGenerator.class,
property = "id")
@Entity
@Table(name=DatabaseConstants.TABELLA_ORDINI)
public class Ordine {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private BigInteger id;
private String numeroOrdine;
@ManyToOne(fetch=FetchType.EAGER)
private Offerta offerta;
private String stato;
@OneToOne(fetch= FetchType.EAGER)
private Binder binder;
ORDINE和OFFERTA对象之间存在多对一关系(更多ORDINE到一个OFFERTA)。 当实体在JSON中序列化时,如果有多个ORDINE,则只显示第一个ORDINE,而其他ORDINE仅显示为其ID。
我需要的是序列化ORDINE及其OFFERTA,而不必返回ORDINE。
@JsonIdentityInfo的使用是否正确? 任何人都可以解释所描述的行为吗?