0
重複した質問です。私はこのタイプの実装を何度もやってきました。今度はなぜこれが動作しないのか分かりません。
非常に標準的な実装 重複した質問です。私はこのタイプの実装を何度もやってきました。今度はなぜこれが動作しないのか分かりません。
非常に標準実装多対多マッピングJsonMappingException:無限再帰(StackOverflowError)
public class Car implements BaseResponse {
@Id
@SequenceGenerator(name = "car_generator", sequenceName = "car_sequence", allocationSize = 1)
@GeneratedValue(generator = "car_generator")
private Long id;
@NotNull
private String name;
@NotNull
private String description;
@ManyToMany(fetch = FetchType.LAZY, mappedBy="cars")
private Set<part> parts;
}
@JsonIgnoreProperties({"cars"})
public class Part implements BaseResponse {
@Id
@SequenceGenerator(name = "part_generator", sequenceName = "part_sequence", allocationSize = 1)
@GeneratedValue(generator = "part_generator")
private Long id;
private String name;
@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(
name = "car_part",
joinColumns = @JoinColumn(name = "part_id", referencedColumnName = "id"),
inverseJoinColumns = @JoinColumn(name = "car_id", referencedColumnName = "id"))
private Set<car> cars;
}
create table if not exists parts
(
id BIGINT,
name varchar,
criteria varchar,
customers_count int,
primary key(id)
);
create table if not exists car_part
(
car_id bigint,
part_id bigint
);
私は入れませんエラーが
Could not write content: Infinite recursion (StackOverflowError) (through reference chain: java.util.ArrayList[0]->com.saylent.domain.car["parts"]); nested exception is com.fasterxml.jackson.databind.JsonMappingException: Infinite recursion (StackOverflowError) (through reference chain: java.util.ArrayList[0]->com.saylent.domain.car["parts"])
パーツに@ @ JsonIgnoreを使用する – Moodi
車を引っ張るときにパーツリストが必要です。 –
あなたのゲッター/セッターを見せてください。おそらく、あなたはnullをチェックしていて、新しいセットを返しますか? – Moodi