Spring JsonIgnore inactive导致无限循环

mspsb9vt  于 5个月前  发布在  Spring
关注(0)|答案(1)|浏览(56)

我捕获了不定式循环,无法成功创建JSON。我有2个表

@Entity
@Table(name = "size")
public class CSize {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(name = "size")
    private String size;

    @JsonIgnore
    @ManyToMany(cascade = CascadeType.REFRESH, fetch = FetchType.EAGER)
    @JoinTable(name = "product_size", joinColumns = { @JoinColumn(name = "size_id") }, inverseJoinColumns = {
            @JoinColumn(name = "product_id") })
    private Set<CProduct> products = new HashSet<>();}

个字符
我的愿望是,当我检索一个CProject列表时,它应该包含来自CSize的字段,但在CSize对象中,它不应该包含product字段。但实际上,CSize对象仍然包含product字段,形成了一个无限循环。


的数据
禁用无限循环。

fkaflof6

fkaflof61#

试试这些样品

@ManyToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinTable( name = "user_product",
            joinColumns = @JoinColumn(name = "user_id"),
            inverseJoinColumns = @JoinColumn(name = "product_id"))
@JsonManagedReference
private List<Product> listOfProductsForUser;

字符串
和/或

@ManyToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL, mappedBy = "listOfProductsForUser")

@JsonBackReference
private List<User> listOfUsersForProduct;


聚焦于@JsonManagedReferencefetch = FetchType.LAZY

相关问题