如果我有一類單@Id
場我可以使用@JsonIdentityInfo
這樣的:如何在複合PK中使用@JsonIdentityInfo?
@Entity
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class, property = "id")
class Example {
@Id
int id;
// getter setter
}
但是,如果我有一個複合PK類:
@Entity
@IdClass(value = PointID.class)
public class Point {
@Id
private int x;
@Id
private int y;
}
@SuppressWarnings("serial")
class PointID implements Serializable {
int x, y;
}
如何使用註釋?在上述情況下的使用將是這樣的
Point p = new Point(1,1);
object1.setPoint(p);
object2.setPoint(p);
bigObject.add(object1, object2);
,當我序列bigObject
我不想duplciate點的數據,但像它與第一例子確實使用其ID。
我剛剛測試過這個和JSON表示是重複的。我在'Point'類中添加了'int a,b,c,d'來進行測試,並得到了這個表示:{「x」:1,「y」:2,「a」:0,「b」 「c」:0,「d」:0,「pk」:「1-> 2」}'在任何地方使用引用,而不是僅使用一次,而使用其他所有地方。 – Mark
將'@ JsonIgnore'添加到各個屬性中。請參閱已編輯的答案 –
結果仍然相同。 – Mark