Ian*_*ton 3 node.js gremlin titan tinkerpop
我是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);
});
});
Run Code Online (Sandbox Code Playgroud)
为什么当我使用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 doc的发布而中断).
由于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作者在这里.
归档时间: |
|
查看次数: |
1407 次 |
最近记录: |