Recursão na consulta ao banco de dados para obter resultado hierárquico usando o Hibernate - Java

Eu tenho uma tabela no meu banco de dados Oracle com relacionamento pai-filho, como -

O que eu preciso é acessar a lista de filhos de maneira hierárquica no Hibernate.

Quando o Pai entra, ele recebe o Filho quando criança.Quando o avô entra - ele recebe filho, pai, tio.Quando o Superavô entra, ele recebe Filho, Pai, Tio e Avô.

Eu tenho uma entidade java para o mesmo também.

public class relations {
    private String child;
    private String parent;
    public getChild();
    public getParent();
    public setChild();
    public setParent();
}

Como executar uma recursão sobre isso?

Devo fazê-lo escrevendo uma consulta nomeada no SQL para obter a lista ou pode ser implementada no java hibernate?

O que estou procurando é escrever um código recursivo em java. Desde já, obrigado.

questionAnswers(1)

yourAnswerToTheQuestion