我正在使用Spring 1.3.3,即使它不为null,我也无法使用GET在Spring Data Rest Response中获取Self Referencing对象。
例如
我的表:
CREATE TABLE `employee` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(40) NOT NULL,
`parent_id` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`),
KEY `FK_employee_parent` (`parent_id`),
CONSTRAINT `FK_employee_parent` FOREIGN KEY (`parent_id`) REFERENCES `employee` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8057 DEFAULT CHARSET=latin1
响应:
{
"id": 1,
"name": "Test Employee",
"_links": {
"self": {
"href": "http://localhost:8081/employee/1"
},
"employee": {
"href": "http://localhost:8081/employee/1"
},
"parent": {
"href": "http://localhost:8081/employee/1/parent"
}
}
}
但我需要名称字段旁边的parent_id,而不是“链接”下的。
OR
答案 0 :(得分:-1)
我建议在你的春季休息时使用杰克逊。然后,您可以轻松地向域对象添加注释,以将链接重命名为parent_id。
@JsonProperty("parent_id")
您还需要在类
上添加两个注释@JsonSerialize
@JsonInclude
最佳实践实际上不是直接使用域对象,而是在处理此问题之间使用pojo。因此,域对象数据将被复制到该pojo,您将只显示要在其余响应中显示的内容。