Я пытаюсь получить список сущностей, используя метод JpaRepository
findAll()
, но сущность, которую я пытаюсь получить, имеет ряд других объектов как OneToMany
Отношения внутри.
У меня есть класс Program
следующим образом:
@Entity
public class Program extends BaseEntity {
private String programTitle;
private String description;
private String programType;
private String price;
@OneToMany(mappedBy = "program", cascade = CascadeType.ALL, orphanRemoval = true, fetch = FetchType.LAZY)
@JsonManagedReference(value = "program-benefit")
private List<Benefit> benefits = new ArrayList<>();
@Column(name = "category")
private String category;
//Getters and setters
}
Как видите, в нем есть список Benefits
.
Когда я пытаюсь получить программу , Я получаю JSON, в котором есть оба списка объектов, например:
Ответ, который я получаю:
{
"id":1,
"category": "cardio",
"description": "exercies for cardio",
"benefit": [
{
"description": "good for healt"
},
{
"description": "string2"
}
],
"price": "50",
"program_title": "cardio demo"
}
Но я хочу мелкая копия объекта типа
Ожидаемый ответ:
{
"id":1,
"category": "cardio",
"description": "exercies for cardio",
"price": "50",
"program_title": "cardio demo"
}
Я попытался изменить CascadeType
, но он перестал бы показывать вложенные объекты во всех API, я только хотите удалить вложенные объекты при вызове метода findAll()
.
Есть ли способ прекратить показывать вложенные объекты при вызове метода findAll()
?