neo4j图形数据库第五弹——整合springboot(支持查询属性)

正经学徒,佛系记录,不搞事情

基于上文:https://blog.csdn.net/qq_31748587/article/details/84308573 的项目

可以获取节点的属性值

neo4j图形数据库第五弹——整合springboot(支持查询属性)_第1张图片

 或者统计返回的具体值

neo4j图形数据库第五弹——整合springboot(支持查询属性)_第2张图片

工具类方法相对更简单些

工具类 Neo4jUtil 中添加方法 getFields 对返回的属性进行解析

    /**
     * cql 返回具体的属性, 如match (n)-[]-() return n.id,n.name,match (n)-[]-() return count(n)
     * @param cql 查询语句
     * @return List>
     */
    public static List> getFields(String cql) {
        List> resList = new ArrayList<>();
        try {
            Session session = driver.session();
            StatementResult result = session.run(cql);
            List list = result.list();
            for (Record r : list) {
                resList.add(r.asMap());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return resList;
    }

调用方法:

    @GetMapping("getFields")
    public Map getFields(){
        Map retMap = new HashMap<>();
        //cql语句
        String cql = "match (n:Person{name:\"Anthony Edwards\"}) return n.name as name,n.born as born";
        //String cql = "match (n:Person) return count(n) as cou";
        retMap.put("fieldList",neo4jUtil.getFields(cql));
        return retMap;
    }

这里返回的节点属性最好通过 as 转换别名,否则查询的结果会是这样的

neo4j图形数据库第五弹——整合springboot(支持查询属性)_第3张图片

查询统计函数(或其他函数)的结果

neo4j图形数据库第五弹——整合springboot(支持查询属性)_第4张图片

项目地址:

https://pan.baidu.com/s/1Yub6WEdcs1TJh9DuYqo_mQ 提取码: rdb1

你可能感兴趣的:(neo4j,springboot)