Java 中的 RavenDB 查询别名

RavenDB query alias in Java

我确定我错过了明显的问题,但我无法弄清楚 "Q" 前缀类型应该是什么,或者如何解决它们。基本上,在整个 Java 文档中,都使用了 QSomething 类,但我找不到解释它们到底是什么、前缀如何工作或如何解决的解释。 即使在一开始,hereQCategory c = QCategory.category; 的使用也没有任何关于如何解析这些 Q 前缀类型的指示。可以预见的是,当我尝试根据该语法逻辑创建对象时,我得到“[abc] 无法解析为类型”。因此,如果有人可以阐明 "mystical" Qsometype 的内容,我将不胜感激。

编辑:我没有目前在我的 Eclipse 设置中使用 Maven(教程提到了 Maven pom) 如果不使用 Maven,这是不可能的吗? 我调查了更多,我知道 Q-类 是由 QueryDSL 和 Maven 自动生成的。我在 Eclipse 中的项目类型是动态 Web,我不确定是否要 to/should 将其转换为 Maven 项目。事实上,我什至不确定这是否能解决我的问题。

谢谢

这些是自动生成的 类,如果您使用 Maven 进行设置,它就可以正常工作。 这个的配置条目是<processor>net.ravendb.querydsl.RavenDBAnnotationProcessor</processor>

这是使用 QueryDSL 生成查询 类。

文档中的解释是:

Please note that plugins section contains net.ravendb.querydsl.RavenDBAnnotationProcessor. As Java does not have LINQ, all definitions of indexes/transformers must be created using strings. Alternatively, you can use the Studio to create indexes/transformers, yet you can also use QueryDSL for strongly-typed querying. In order to use QueryDSL you have to mark your entities with @QueryEntity annotation and enable code generation in pom.xml.

您可以手动生成此文件,请参阅 http://www.querydsl.com/static/querydsl/2.7.3/reference/html/ch03s02.html