Как написать предикат gremlin jannusgraph lt, lte, gte и т. Д. В Java? - PullRequest
0 голосов
/ 01 марта 2019

Я занимаюсь разработкой java-интерфейса поверх базы данных janusgraph.

Мне нужно написать приведенный ниже запрос gremlin на Java .Я знаю, что в janusgraph есть сравнение Enum, содержащее lt, lte, eq ... но функция test принимает два параметра, поэтому мне нужно знать, как она написана в java.

Синтаксис Гремлин:

 g.V().hasLabel("person").has("age", lte(29))

В Janusgraph я думаю!:

  g.V().hasLabel("person").has("age", Compare.lte.test({{XXX}},29))

Где {{XXX}} должен быть заменен запрашиваемым элементом.

Спасибо

1 Ответ

0 голосов
/ 01 марта 2019

Я не уверен, что следую вашему вопросу, поскольку ваш первый запрос - Java:

g.V().hasLabel("person").has("age", lte(29))

Пока вы статически импортируете P.lte с:

import static org.apache.tinkerpop.gremlin.process.traversal.P.lte;

, вы можетезапишите обход таким образом, и он будет работать просто отлично.Если вы не статически импортируете этот метод, вам нужно сделать:

g.V().hasLabel("person").has("age", P.lte(29))

В любом случае вам нужно импортировать какой-то аспект P.

...