[英]Arango Edge Creation bug with Spring boot
我正在使用 ArangoDb 创建一个项目用于我的研究。 它是一个带有 Spring Boot 的后端项目。 我正在关注这里的教程:
https://github.com/arangodb/spring-data-demo
一切顺利,但是当我尝试使用“Character”类创建控制器时。 我收到此错误: java.lang.StackOverflowError: null
经过进一步检查,我发现是孩子和父母的映射造成了这个问题。 在一个单独的项目中,我创建了一个基本的 POJO(类 Parts),它具有基本属性,例如 name、id 和类似于角色类中的“childs”的 childPart 集合。 我做了所有的映射(包括边和所有)并创建了关系。 然后,如果我有两个 Parts 对象,P1 和 P2,并且我将 P2 设为 P1 的 childPart。 JSON 响应是 P2 作为 P1 的子级,然后 P1 作为 P2 的子级,然后 P2 作为 P1 的子级一直不断。 它是一个无限循环。 早些时候我认为我的实现存在一些问题,但是当我下载演示代码时。 它有同样的问题。 如果有办法解决这个问题,或者我错过了什么,请告诉我。
教程代码的邮递员响应实际上是一个无限循环。 像这样的东西:
[
{
"id": "424543",
"name": "Sansa",
"surname": "Stark",
"alive": true,
"age": 13,
"childs": [
{
"id": "424594",
"name": "Ned",
"surname": "Stark",
"alive": false,
"age": 41,
"childs": [
{
"id": "424606",
"name": "Robb",
"surname": "Stark",
"alive": false,
"age": null,
"childs": [
{
"id": "424594",
"name": "Ned",
"surname": "Stark",
"alive": false,
"age": 41,
"childs": [
{
"id": "424606",
"name": "Robb",
"surname": "Stark",
"alive": false,
"age": null,
"childs": [
{
"id": "424594",
"name": "Ned",
"surname": "Stark",
"alive": false,
"age": 41,
"childs": [
{
注释@Ref
、 @Relations
、 @To
和@From
允许设置字段boolean lazy
,它指定是否应该延迟加载实体。 根据您对实体进行建模的方式以及您使用上述哪个注释,我认为您可以解决在其中一个中设置lazy = true
的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.