У меня проблема с Json, возвращаемым моим методом REST api GET.
Вот как выглядят мои объекты:
@Entity
public class Employee {
...
@ManyToOne(fetch = FetchType.EAGER, optional = false)
@JoinColumn(name = "department_id", nullable = true)
private Department department;
}
@Entity
public class Department {
...
@OneToMany(mappedBy = "department", fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@JsonBackReference
private Set<Employee> employees;
}
И это ответ, который я получаю, пока Я пытаюсь ПОЛУЧИТЬ Сотрудника по его идентификатору:
{
"id": 1,
"surname": "smith",
"department": {
"id": 1,
"name": "HR",
"room": "13"
}
}
Теперь вместо всего объекта «Отдел» я хотел бы получить простой идентификатор: "department_id": 1
, , и я не Я не знаю, как это сделать.
Второй вопрос: что за good practise
в этой ситуации в REST api? Следует ли мне оставить все как есть; выставить только id (то, что я прошу вас, как делать); или использовать DTO и вообще его не показывать? Более того , в любом случае я собираюсь добавить _links в этот пользовательский отдел, и в этом случае я подумал, что оставить только идентификатор должно быть нормально (скажите мне, если я ошибаюсь). Ждем ваших ответов!