Почему некоторые объекты сериализуются только по их идентификаторам? [закрыто]JAVA

Программисты JAVA общаются здесь
Anonymous
Почему некоторые объекты сериализуются только по их идентификаторам? [закрыто]

Сообщение Anonymous »

У меня есть объект, который представляет имеющиеся на складе продукты:

Код: Выделить всё

@Id
private String lotNumber;

@Id
@ManyToOne(cascade = CascadeType.MERGE)
@JoinColumn(name = "productId", foreignKey = @ForeignKey(name = "fk_product"), referencedColumnName = "productId")
private Products product;

@Id
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumns({
@JoinColumn(name = "id", foreignKey = @ForeignKey(name = "fk_billId")),
@JoinColumn(name = "supplier", foreignKey = @ForeignKey(name = "fk_billSupplier"))
})

private Bills bills;
Теперь при сохранении объектов все работает нормально, но когда я получаю их в формате JSON, я получаю вот что:

Код: Выделить всё

"@lotNumber": "537fe03f-b261-48bb-b1dd-9215b5ad868a",
"lotNumber": "LOT001",
"product": {},
"bills": 7,
Серийный номер продукта соответствует ожидаемому. Я удалил его содержимое, чтобы сообщение было коротким. Странно то, что объект счета сериализуется как просто его идентификатор из JsonIdentity().
Я не могу найти никаких упоминаний об этом поведении, поэтому может кто-нибудь объяснить, почему это происходит?

Подробнее здесь: https://stackoverflow.com/questions/790 ... s-their-id

Вернуться в «JAVA»