美文网首页
Neo4j GraphQL Library:OGM

Neo4j GraphQL Library:OGM

作者: 我的小小笔尖 | 来源:发表于2021-06-07 09:18 被阅读0次

    https://neo4j.com/docs/graphql-manual/current/ogm/

    OGM:Object Graph Mapper

    使用本地Neo4j图数据库

    1.启动数据库

    C:\Users\bing.yao>neo4j console
    

    2.安装graphql-ogm

    C:\Users\bing.yao>npm install @neo4j/graphql-ogm
    

    相关依赖会一并下载安装

    3.创建一个空目录作为项目目录,安装Express

    C:\Users\bing.yao>mkdir course_ogm
    C:\Users\bing.yao>cd course_ogm
    C:\Users\bing.yao\course_ogm>npm init ##采用默认值,回车几次即可
    C:\Users\bing.yao\course_ogm>npm install express --save
    
    ogm01.JPG

    参考:Express,基于Node.js的Web开发框架
    https://www.expressjs.com.cn/

    4.在项目目录下创建index.js文件

    注意:修改Neo4j图数据库连接密码

    const express = require("express");
    const { OGM } = require("@neo4j/graphql-ogm");
    const neo4j = require("neo4j-driver");
    
    const driver = neo4j.driver(
        "bolt://localhost:7687",
        neo4j.auth.basic("neo4j", "letmein")
    );
    
    const typeDefs = `
        type User {
            id: ID
            name: String
        }
    `;
    
    const ogm = new OGM({ typeDefs, driver });
    const User = ogm.model("User");
    
    const app = express();
    app.get("/users", async (req, res) => {
        const { search, skip, limit, sort } = req.query;
    
        const regex = search ? `(?i).*${search}.*` : null;
    
        const users = await User.find({
            where: { name_REGEX: regex },
            options: {
                skip,
                limit,
                sort
            }
        });
    
        return res.json(users).end();
    });
    app.listen(4000, () => console.log("started"));
    

    5.启动Express服务

    C:\Users\bing.yao\course_ogm>node index.js
    

    6.访问根目录(/)

    http://localhost:4000/
    页面显示:Hello World!,表示Express Web服务正常

    7.访问users目录

    相关文章

      网友评论

          本文标题:Neo4j GraphQL Library:OGM

          本文链接:https://www.haomeiwen.com/subject/sgnrsltx.html