Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将@manytone实体提取为多个返回字符串表示,为什么?_Java_Spring_Hibernate_Spring Data Jpa - Fatal编程技术网

Java 将@manytone实体提取为多个返回字符串表示,为什么?

Java 将@manytone实体提取为多个返回字符串表示,为什么?,java,spring,hibernate,spring-data-jpa,Java,Spring,Hibernate,Spring Data Jpa,我在SpringDataJPA应用程序中发现了一个奇怪的问题。我不知道为什么,但当我获取具有@manytone实体的记录时,它只在响应中返回其实例一次,随后只返回字符串表示。以下分别是实体和响应: 实体 以下是获取调查时的JSON响应 然后: "surveyType": "SF", 如果调查响应中有多个surveyType实例。为什么在第一次尝试后它会将其表示为字符串而不是对象?我猜这是使用@JsonIdentityInfo的结果 通过使用该注释,您告诉它响应应该包括一个完全序列化

我在SpringDataJPA应用程序中发现了一个奇怪的问题。我不知道为什么,但当我获取具有@manytone实体的记录时,它只在响应中返回其实例一次,随后只返回字符串表示。以下分别是实体和响应: 实体

以下是获取调查时的JSON响应

然后:

    "surveyType": "SF",  

如果调查响应中有多个surveyType实例。为什么在第一次尝试后它会将其表示为字符串而不是对象?

我猜这是使用@JsonIdentityInfo的结果


通过使用该注释,您告诉它响应应该包括一个完全序列化的实例,然后返回引用该完全序列化实例的ID。

Oh yes。。这是根本原因。在添加generator=ObjectedGenerators.None.class之后,它解决了我的问题
"surveyType": {
        "name": "SF",
        "description": "Some description here"
    },
    "surveyType": "SF",