当前位置 : 主页 > 网页制作 > Nodejs >

node.js – 被所有这个Node困扰 – > Titan的东西

来源:互联网 收集:自由互联 发布时间:2021-06-16
我是 Java,Gremlin,Nodejs,Tickerpop,Maven以及其他所有人的新手.这段代码有什么作用?特别是’java.import’在做什么?它是Java类吗?这与Titan有什么关系? var Titan = require('titan-node');var gremlin =
我是 Java,Gremlin,Nodejs,Tickerpop,Maven以及其他所有人的新手.这段代码有什么作用?特别是’java.import’在做什么?它是Java类吗?这与Titan有什么关系?

var Titan = require('titan-node');
var gremlin = new Titan.Gremlin({ loglevel: 'OFF' });

var TinkerGraphFactory = gremlin.java.import('com.tinkerpop.blueprints.impls.tg.TinkerGraphFactory');
var graph = TinkerGraphFactory.createTinkerGraphSync();
var g = gremlin.wrap(graph);

g.V('name', 'marko').next(function (err, v) {
    v.getProperty('name', function (err, value) {
        console.log(value);
    });
});

为什么当我使用Rexster时,我看不到这里要查询的数据库?

添加到@mscdex有效答案.

这是Node.js中的JavaScript风格的Gremlin代码,它使用通过node-java的直接Java绑定.

Gremlin本身不是语言,而是DSL.它大部分时间都是用Groovy编写的(因为它缩短了Java语法),但它也存在于任何符合JVM的语言中(即Java,Groovy,Scala,通过rhino的JavaScript和现在使用Java 8的nashorn,以此命名)一些).在输入Gremlin查询/脚本时可以访问完整的Groovy / Java API,这使它成为一种图灵完备的“语言”.

我建议阅读http://gremlindocs.com/和http://sql2gremlin.com以获取有关Gremlin的有趣初学者资源. http://www.tinkerpop.com/docs/3.0.0.M1/将为您提供有关TinkerPop和Gremlin的详细信息(注意:链接将在官方v3.0文档发布时中断).

由于node-java的工作方式和公开Java方法(sync / async),你需要在这里使用回调以阻止事件循环.这是一个JavaScript问题,严格来说与Gremlin没有任何关系.

还有一些其他客户端没有直接绑定到JVM,但使用HTTP作为TinkerPop 2.x(https://github.com/gulthor/grex表示Node.js)或WebSocket表示TinkerPop 3.0(https://github.com/gulthor/gremlin-client表示Node.JS / browsers,它将成为官方TP3 JavaScript驱动程序).注意:TinkerPop成员/ lib作者在这里.

网友评论