我想将 QueryDSL 与 JPA 一起使用,并成功插入 apt-maven 。
的pom.xml;
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>com.mysema.maven</groupId>
<artifactId>apt-maven-plugin</artifactId>
<version>1.1.3</version>
<executions>
<execution>
<goals>
<goal>process</goal>
</goals>
<configuration>
<outputDirectory>target/generated-sources/java</outputDirectory>
<processor>com.querydsl.apt.jpa.JPAAnnotationProcessor </processor>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
它也成功生成了域classess的Q类,但是当我import com.buraku.netas.domain.QUser;
时,它会抛出错误并且找不到Q类。
运行 mvn install 后,我的文件夹结构如下;
如您所见,Q类已生成,但我还应该做些什么才能使用它们?
答案 0 :(得分:1)
首先,将实现QuerydslPredicateExecutor添加到接口UserRepository。
其次,创建一个返回com.querydsl.core.types.Predicate并使用BooleanBuilder和Q-class构建查询(JPQL)的方法。
您可以在github上参考我的sample-jpa代码。