2
JPQL을 사용하여 트리 구조를 선택하려고합니다. 매핑은 예상했던 것보다 약간 다릅니다.JPA 트리를 선택하면 childNodes는 항상 null입니다.
ID, PARENT_ID
1 NULL
2 1
3 1
4 3
: 여기
List<TreeNode> list = super.getEntityManager().createNamedQuery("TreeNode.findAllTree").getResultList();
내 테이블 데이터입니다 :
여기
@Entity
@NamedQueries({
@NamedQuery(name = "TreeNode.findAllTree",
query = "select p from TreeNode p " +
"LEFT JOIN fetch p.parentNode"),
})
public class TreeNode {
@Id
private long id = 0;
@ManyToOne
@JoinColumn(name = "parent_id")
public TreeNode parentNode;
@OneToMany(mappedBy="parentNode")
public List<TreeNode> childNodes;
쿼리 : 그것은 부모 트리 구조를 매핑하지만 목록 childNodes에 항상 널 :(여기 내 매핑 열망하고 게으른 FetchType을 시도했지만 childNodes는 항상 null입니다 (모든 생각?
James에게 감사드립니다. 캐시가 문제의 원인이었습니다! – maxx