бесконечный список?Вы имели в виду исключение stackOverFlow?
Если ситуация такая же, как я сказал, тогда вы должны проверить что-то вроде типа выборки и метода toString () или equal () сущностей или что-то в этом роде.
Например, существуют сущности с именами A и B, и их отношение одно к многим (A - это одно). Если вы сконфигурируете оба их fetchType как Eager, то когда jpa-запрос A, он также будет запрашивать B.Но B также содержит A, поэтому jpa снова будет запрашивать A. Этот вид циклического цикла вызовет stackOverFlow.
Кстати, как насчет предоставления дополнительной информации о вашей проблеме, такой как имя исключения? Это слишком сложно дляя хочу дать вам конкретное решение, все, что я могу сделать, это рассказать вам о некоторых опытах, с которыми я встречался раньше.
Ну, я создал небольшой проект с SpringBoot 2.1.0 и MySql.
Это мой cartItem
public class CartItem {
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Id
@Column(name="id")
private Integer id;
@JsonIgnore
@ManyToOne
@JoinColumn(name="cart_id", nullable=false)
private Cart cart;
}
и моя корзина:
public class Cart {
@GeneratedValue(strategy= GenerationType.IDENTITY)
@Id
@Column(name="id")
private Integer id;
@OneToMany(mappedBy="cart", fetch = FetchType.EAGER)
private List<CartItem> cartItems;
}
Контроллер такой же, как вы написали. После добавления @JsonIgnore в корзину, созданную из CartItem, цикл кругаболее (BeforНапример, у программы возникла проблема с циклическим циклом.)
Каждый раз, когда вы используете jpa с @ oneToMany, @ ManyToOne или @ ManyToMany, вы должны быть осторожны с этой проблемой.создание экземпляра объекта, печать объекта или чего-то в этом роде. И, конечно, есть много способов решить его, например, изменить тип выборки на LAZY, добавить @ JsonIgnore, переопределить toString () и метод equal ().