Java StackOverflowerError:执行get请求时为null

Java StackOverflowerError:执行get请求时为null,java,spring,hibernate,spring-boot,stack-overflow,Java,Spring,Hibernate,Spring Boot,Stack Overflow,当我尝试对我的/用户端点执行get请求时遇到问题,而不是返回我想要的,返回以下错误: 2018-07-07 17:00:06.636错误294108---[nio-8080-exec-3]o.a.c.c.c.[/].[dispatcherServlet]:路径[]上下文中Servlet[dispatcherServlet]的Servlet.service()引发异常[请求处理失败;嵌套异常为org.springframework.http.converter.HttpMessageNotWri

当我尝试对我的/用户端点执行get请求时遇到问题,而不是返回我想要的,返回以下错误:

2018-07-07 17:00:06.636错误294108---[nio-8080-exec-3]o.a.c.c.c.[/].[dispatcherServlet]:路径[]上下文中Servlet[dispatcherServlet]的Servlet.service()引发异常[请求处理失败;嵌套异常为org.springframework.http.converter.HttpMessageNotWritableException:无法写入JSON:无限递归(StackOverflower);嵌套异常为com.fasterxml.jackson.databind.JsonMappingException:无限递归(StackOverflower)(通过引用链:io.union.restapi.domain.Group)[“用户”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“组”]->io.union.restapi.domain.group[“用户”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.group[“用户”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“组”]->io.union.restapi.domain.group[“用户”]->io.union.restapi.domain.User[“组”]->io.union.restapi.domain.group[“用户”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“组”->io.union.restapi.domain.group[“用户”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“group”]->io.union.restapi.domain.group[“users”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“group”]->io.union.restapi.domain.group[“users”]->org.hibernate.collection.internal.PersistentSet.User[“group”]->io.union.restapi.domain.group[“users”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“group”]->io.union.restapi.domain.group[“users”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“group”]->io.union.restapi.domain.group[“users”->org.hibernate.collection.internal.PersistentSet[0]->.union.restapi.domain.User[”组“]->io.union.restapi.domain.group[“用户”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“组”]->io.union.restapi.domain.group[“用户”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“组”]->io.union.restapi.domain.group[“用户”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“group”]->io.union.restapi.domain.group[“users”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“group”]->io.union.restapi.domain.group[“users”]),具有根本原因
java.lang.StackOverflower错误:null
在java.lang.ClassLoader.defineClass1(本机方法)~[na:1.8.0_171]

位于java.lang.ClassLoader.defineClass(ClassLoader.java:763)~
您必须将
@JsonIgnore
添加到
私有组组;
以便jackson可以忽略它。否则,jackson将尝试序列化
,然后在
对象中的
用户
设置用户的
用户
属性中创建一个回
的循环如果要查看错误消息,此部分具体如下:

通过引用链:io.union.restapi.domain.Group[“用户”]->org.hibernate.collection.internal.PersistentSet[0]->io.union.restapi.domain.User[“组”]->io.union.restapi.domain.Group[“用户”

我们发现引用链形成了一个循环。您遇到了Jackson无限递归问题,有几种方法可以解决它。您可以找到一篇介绍如何处理它的好文章。

您可以使用@OneToMany(mappedBy=

@OneToMany(mappedBy = "group",cascade = CascadeType.ALL ,fetch = FetchType.LAZY)

嵌套异常为org.springframework.http.converter.HttpMessageNotWritableException:无法写入JSON:无限递归(StackOverflowerr);嵌套异常为com.fasterxml.jackson.databind.JsonMappingException:无限递归(StackOverflowerr)
我不是Spring方面的专家,但我认为你应该查找自引用或是什么导致了递归。我不能添加@JsonIgnore,它会从json响应中删除属性。嗯,但可以创建DTO来解决这个问题。是的,创建一个DTO很好。无论如何,我必须隐藏域模型。嗨@ram,欢迎来到StackOverflow!W在这里回答问题时,除了代码行之外,试着解释一下代码的含义。此外,您还可以通过在代码周围加上``来格式化代码。