JPA 栈溢出问题StackOverflowError

我遇到的问题在于模型设计

/**

* 年级信息

*

* @author Administrator

*/

@Entity

@Table(name ="grades")

@GenericGenerator(name ="snowFlake", strategy ="com.xxx.eas.SnowFlake")

@Data

@AllArgsConstructor(staticName ="of")

@NoArgsConstructor

@Builder

@EqualsAndHashCode(exclude= {"previous", "next"})

public class Grade {

/**

* id

*/

    @Id

    @GeneratedValue(generator ="snowFlake")

@Column(name ="id")

private Longid;

    /**

    * 年级名称 (KD, KC, KB, KA...)

    */

    @Column(name ="name")

private Stringname;

    /**

    * 排序

    */

    @Column(name ="sort")

private Integersort;

    /**

    * 上一年级

    */

    @OneToOne

    @JoinColumn(name ="previous")

private Gradeprevious;

    /**

    * 下一年级

    */

    @OneToOne

    @JoinColumn(name ="next")

private Gradenext;


年级模型中包含上下年级的,这种很容易形成循环调用。


解决方法:@EqualsAndHashCode(exclude= {"previous", "next"})   排除属性转换

推荐阅读更多精彩内容