我想执行同一个 gremlin 语句数百万次,只是改变一个参数。 tinkerpop 文档表明您应该能够使用如下语法:
Map<String,Object> params = new HashMap<>();
params.put("x",4);
client.submit("[1,2,3,x]", params);
我的说法不同,但功能相同。它看起来像这样:
Map<String,Object> params = new HashMap<>();
params.put("applicationID", "9b1ef8ce3baabafe5167d276bb07d829")
ResultSet rs = client.submit("g.V().hasLabel('application').has(T.id, applicationID)", params);
但我得到:
java.util.concurrent.CompletionException: org.apache.tinkerpop.gremlin.driver.exception.ResponseException: {"detailedMessage":"Failed to interpret Gremlin query: Query parsing failed at line 1, character position at 52, error message : token recognition error at: 'ap'","code":"MalformedQueryException","requestId":"fd0ca287-f81d-4cb8-9a3d-cd2f9d003e3c"}
很明显不喜欢参数名称“applicationID”
我试过用引号括起来,但当然,它会被视为字符串文字。