Не удаётся вывести данные из сущности

Никак не удаётся вывести на экран квартиры из сущности House всем списком и отдельно по ID. Когда перехожу на страницу, то выдаёт ошибку, что бесконечный цикл

Could not write JSON: Infinite recursion (StackOverflowError); nested exception is com.fasterxml.jackson.databind.JsonMappingException: Infinite recursion (StackOverflowError) (through reference chain: task.homerent.model.House["city"]->task.homerent.model.City$HibernateProxy$ikPQOTJQ["house"])

Ссылка на код

Вот так выглядит Контроллер:

HouseRestController


@GetMapping("/{id}")
    @PreAuthorize("hasAuthority('user:read')")
    public House userPostInfo(@PathVariable(value = "id") Long id) {
        Optional<House> house = houseRepository.findById(id);
        List<House> res = new ArrayList<>();
        house.ifPresent(res::add);

        return res.stream().filter(houses -> houses.getId().equals(id))
                .findFirst()
                .orElse(null);
    }

Ответы (1 шт):

Автор решения: Komdosh

Ошибка говорит, что при сериализации у вас возникла бесконечная зависимости house->city->house.

Вам нужно разрешить эту зависимость, например так:

public class City {
    @JsonBackReference
    private Set<House> house;
}

public class House {
    @JsonManagedReference
    private City city;
}
→ Ссылка