gpt4 book ai didi

java - Neo4j:哪个内部模块负责验证密码的 WHERE 条件?

转载 作者:搜寻专家 更新时间:2023-11-01 00:54:29 24 4
gpt4 key购买 nike

我的目标是向 neo4j 引擎添加额外的(全局)过滤规则。

根据 this answer :

Cypher is build on the Traversal API

尽管我尝试在 PathExpanders.scalaStandardExpander.scala 中设置断点,但似乎在执行密码 MATCH 查询时它们没有被触发。此外,修改 Evaluators.java 中的 PathEvaluator 不会影响密码查询的结果。

我还检查了在密码解析期间触发的 ast.rewriters,尽管我似乎需要在后面的步骤中嵌入全局过滤 - 当引擎从存储中选择数据时。

试图从这个图表演示中理解内部结构:https://www.slideshare.net/thobe/an-overview-of-neo4j-internals虽然没有太多关于确切模块的信息。

对于密码查询,在什么地方验证节点/关系属性?

指向内部文档的链接也很有帮助!

最佳答案

你来对地方了:

Cypher is build on the Traversal API

问题似乎是您的 IDE 没有遇到断点,如果您使用的是 eclipse,最可靠的方法(并最终得到一些实际有用的东西)是下载源代码,并设置另一个“Java项目”指向那个来源。

为此,请下载源代码并将其解压缩到系统的某个位置。点击"file"->“新建”->“Java项目”。在下一个对话框中,为其指定项目名称并选择“从现有源创建项目”。浏览到开源库的根位置。

假设项目所需的所有附加库等都包含在您下载的项目中,Eclipse 将解决所有问题并为您设置构建路径。

您需要从项目的构建路径中删除开源 jar,并将这个新项目添加到项目的构建路径中。

现在,您可以将其视为您的代码,并随意调试。

关于java - Neo4j:哪个内部模块负责验证密码的 WHERE 条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46950792/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com