Mysema Querydsl 用法的一些在线示例依赖于JPAQuery#list()
方法,例如this stackoverflow answer包含GROUP BY / COUNT聚合示例。它也在official documentation中提及。
但是,我没有在JPAQuery
类上看到这种方法。它没有显示在IDE的自动完成中,并且它不存在于Maven下载的JAR文件中。
我已将这些依赖项添加到我的Maven项目中:
<dependency>
<groupId>com.querydsl</groupId>
<artifactId>querydsl-apt</artifactId>
<version>4.0.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.querydsl</groupId>
<artifactId>querydsl-jpa</artifactId>
<version>4.0.4</version>
</dependency>
为什么JPAQuery#list()
方法不存在?
答案 0 :(得分:3)
当Querydsl从3.x升级到4.x行时,方法JPAQuery.list
已被删除。由于您使用的是4.0.4版,因此该方法不再可用。
正如我在阅读release notes时所理解的那样,版本4在代码库中引入了许多重大更改,从而破坏了旧代码。您有两种选择:
list
方法fetch
方法。请查看this GitHub issue以获取更改列表。