天天看点

neo4j 层级查询

准备数据

实体

import lombok.Data;
import org.neo4j.ogm.annotation.*;

import java.util.List;

/**
 * @Auther: 15379
 * @Date: 2019/4/5 20:30
 */
@Data
@NodeEntity(label = "CrudNODE")
public class CrudNode {

    @Id
    @GeneratedValue
    private Long id;

    @Property(name = "name")
    private String name;

    @Property(name = "higtOne")
    private String higtOne;

    @Property(name = "higtTwo")
    private String higtTwo;

    @Relationship(type = "buxiangjiaban")
    private List<CrudNode> list;
}

           

DAO组件

import cn.neoTest.pojo.CrudNode;
import org.springframework.data.neo4j.annotation.Query;
import org.springframework.data.neo4j.repository.Neo4jRepository;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;

/**
 * @Auther: 15379
 * @Date: 2019/4/5 20:42
 */
@Repository
public interface NeoRepository extends Neo4jRepository<CrudNode, Long> {

}

           

创建节点

@Test
    public void  CNodeTest() {

        CrudNode crudNode = new CrudNode();
        crudNode.setName("zhan");
        crudNode.setHigtOne("10");
        crudNode.setHigtTwo("12");

        CrudNode crudNode1 = new CrudNode();
        crudNode1.setName("ngsan1");
        crudNode1.setHigtOne("10");
        crudNode1.setHigtTwo("12");

        CrudNode crudNode1x = new CrudNode();
        crudNode1x.setName("ngsan1x");
        crudNode1x.setHigtOne("10x");
        crudNode1x.setHigtTwo("12x");

        List<CrudNode> list1 = new ArrayList<>();
        list1.add(crudNode1);
        list1.add(crudNode1x);
        crudNode.setList(list1);

        CrudNode crudNode2 = new CrudNode();
        crudNode2.setName("zn2");
        crudNode2.setHigtOne("10");
        crudNode2.setHigtTwo("12");
        List<CrudNode> list2 = new ArrayList<>();
        list2.add(crudNode2);
        crudNode1.setList(list2);

        CrudNode crudNode3 = new CrudNode();
        crudNode3.setName("zn22222");
        crudNode3.setHigtOne("10");
        crudNode3.setHigtTwo("12");
        List<CrudNode> list3 = new ArrayList<>();
        list3.add(crudNode3);
        crudNode2.setList(list3);

        neoRepository.save(crudNode);
    }
           

效果如下

neo4j 层级查询

这东西什么时候写的,,我都转行了。。。。