我有一个具有属性List<Node> nodeChild;
的对象
当我回复时:
return new ResponseEntity<>(myObject, HttpStatus.OK);
在浏览器中,我获得了json的所有属性,但没有在myObject中列出nodeChild。
恩蒂:
@Entity
@javax.persistence.Table(name="node")
public class Node implements Serializable {
@Id
@GeneratedValue
@Column(name="id_node")
protected int id_node;
@ManyToOne
@JoinColumn(name="id_parent")
protected Node id_parent;
@Column(name="node_name")
protected String node_name;
@JsonBackReference
@OneToMany(fetch = FetchType.EAGER,mappedBy = "id_parent",cascade = CascadeType.ALL)
protected List<Node> nodeChild;
这就是我得到的:
{"id_node":2,"id_parent":{"id_node":1,"id_parent":null,"node_name":null},"node_name":null}
在java中我在返回响应之前尝试... myObject.getNodeChild();我得到了清单。
答案 0 :(得分:1)
您必须使用id_parent
注释@JsonBackReference
,并nodeChild
添加@JsonManagedReference
var Parse = require('Parse').Parse;
Parse.initialize(...);
Parse.Push.send({
channels: [],
data: {parsekey: 'parseval'}
}).then(function (result) {
console.log(result);
});
,如here所述:
@JsonManagedReference是&#34;转发&#34;参考的一部分:一个 正常序列化,并处理触发反向链接 另一个参考。带注释的属性可以是bean,数组, 集合(List,Set)或Map类型,它必须是bean属性 (由使用BeanSerializer序列化的类型的属性处理。)
@JsonBackReference是&#34; back&#34;参考部分:将省略 从序列化,并在反序列化过程中重新构建 前向参考。带注释的属性必须是bean类型。