1
快速参考那些希望使用XML配置来配置Spring MVC,Spring Data和QueryDSL的人。如何配置(XML)QueryDSL以用于Spring Data和Spring MVC?
快速参考那些希望使用XML配置来配置Spring MVC,Spring Data和QueryDSL的人。如何配置(XML)QueryDSL以用于Spring Data和Spring MVC?
在pom.xml
:
<properties>
<querydsl.version>3.6.7</querydsl.version>
</properties>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>1.9.0.RELEASE</version>
</dependency>
<dependency>
<groupId>com.mysema.querydsl</groupId>
<artifactId>querydsl-apt</artifactId>
<version>${querydsl.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.mysema.querydsl</groupId>
<artifactId>querydsl-jpa</artifactId>
<version>${querydsl.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<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.mysema.query.apt.jpa.JPAAnnotationProcessor</processor>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
在mvc-dispatcher-servlet.xml
:
在FooRepository.java
:
public interface FooRepository extends JpaRepository<Foo, Long>, QueryDslPredicateExecutor<Foo> {
}
在FooController.java
:
@RequestMapping("/foo")
String getPage(
@QuerydslPredicate(root = Foo.class) Predicate predicate,
Pageable pageable,
Model model
) {
Page<Foo> page = fooRepository.findAll(predicate, pageable);
model.addAttribute("page", page);
return "foo/index";
}
然后你就可以查询你的资料库是这样的:
GET /foo?bar=baz
假设bar
是foo