MongoDB:StackOveflowError
来源:爱站网时间:2021-09-16编辑:网友分享
用户实体代码段:数据类User {@DBRef @JsonView(View.FULL_INFORMATION :: class)@JsonManagedReference var Items:Set
= setOf()//依此类推}项目实体代码段:@JsonView(...
问题描述
用户实体代码段:
data class User{
@DBRef
@JsonView(View.FULL_INFORMATION::class)
@JsonManagedReference
var Items:Set- = setOf()
// and so on
}
项目实体代码段:
@JsonView(View.EVALUATION::class)
@DBRef
@JsonBackReference
var user:User? = null
评论实体摘要:
@JsonView(View.EVALUATION::class)
@DBRef
@JsonManagedReference
@JsonIdentityInfo(
generator = ObjectIdGenerators.PropertyGenerator::class,
property = "id")
var owner:User? = null
因此,当我向服务器发送任何请求时,它将失败并显示StackOverflowError。因此,我发现问题出在Comment实体片段中,如果我删除/注释它,该程序将可以正常运行。如何解决?
思路:
您可以在Jackson中使用注释来处理反向引用,但是在Spring Data Mongo中没有等效的注释。我的猜测是,您应该使用手动引用而不是@DBRef
并编写一个自定义转换器。