5.3 node操作neo4j图数据库

1、按照依赖

npm install neo4j-driver

 2、代码示例

config/neo4j_config.js

module.exports = {
    url: 'bolt://10.7.128.19:7687',
    username: 'neo4j',
    password: 'wlh123456'
}

单例模式和集群模式连接方式不一样

如下图

 文档地址:https://neo4j.com/docs/javascript-manual/current/client-applications/

neo4j/write.js

const neo4j = require('neo4j-driver');
const mysql_config = require('../config/mysql_config');
const {connect, read} = require('../mysql/read_mysql');
const neo4j_config = require('../config/neo4j_config');
(async () => {
    const driver = neo4j.driver(neo4j_config.url, neo4j.auth.basic(neo4j_config.username, neo4j_config.password))
    const session = driver.session()
    let c = await connect(mysql_config.options)
    let arr = await read(c, mysql_config.sql)
    let result;
    try {
        for (let i in arr) {
            if (arr.hasOwnProperty(i) && arr[i].id !== null) {
                let j = 0;
                let node_name = `test${j}`
                let lab_name = `Test${j}`
                if (parseInt(i) < arr.length - 1) {
                    let query = `CREATE (${node_name}:${lab_name}{
                            id:"${arr[j].id}",
                            crawl_cfg_id:"${arr[j].crawl_cfg_id}",
                            detection_type:${arr[j].detection_type},
                            crawl_file_info_id:"${arr[j].crawl_file_info_id}",
                            task_instance_id:"${arr[j].task_instance_id}",
                            crawl_content:"${(arr[j].crawl_content).toString().replaceAll('"', "").replaceAll(" ", "").replaceAll("{", "").replaceAll("}", "")}",
                            col6:${arr[j].col6},
                            col8:"${arr[j].col8}"}
                            )-[relation:Relation{info:"无锡粉丝和北京粉丝"}]
                            ->(test${parseInt(i) + 1}:Test${parseInt(i) + 1}
                            {
                            id:"${arr[parseInt(i) + 1].id}",
                            crawl_cfg_id:"${arr[parseInt(i) + 1].crawl_cfg_id}",
                            detection_type:${arr[parseInt(i) + 1].detection_type},
                            crawl_file_info_id:"${arr[parseInt(i) + 1].crawl_file_info_id}",
                            task_instance_id:"${arr[parseInt(i) + 1].task_instance_id}",
                            crawl_content:"${(arr[parseInt(i) + 1].crawl_content).toString().replaceAll('"', "").replaceAll(" ", "").replaceAll("{", "").replaceAll("}", "")}",
                            col6:${arr[parseInt(i) + 1].col6},
                            col8:"${arr[parseInt(i) + 1].col8}"
                            })`
                    result = await session.readTransaction(tx =>
                        tx.run(
                            query,
                        )
                    )
                }
            }
        }
    } finally {
        await c.end()
        await session.close()
    }
    await driver.close()
})()

3、最终效果如下

打开浏览器端查看http://10.7.128.19:7474/browser

 

 neo4j语法文档地址:https://www.w3cschool.cn/neo4j/propertiessxo61zow.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值