maven依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
dao
public interface ArticleDao extends MongoRepository<Article,String>,QueryByExampleExecutor<Article> {
}
controller
@RequestMapping("/list")
public Page<Article> list(Article article,@PageableDefault(sort = { "createdAt" },page = 0,size = 10) Pageable pageable){
ExampleMatcher matcher = ExampleMatcher.matching()
.withMatcher("content", ExampleMatcher.GenericPropertyMatchers.contains());
Example<Article> example = Example.of(article,matcher);
return articleDao.findAll(example,pageable);
}
config
@SpringBootApplication
@EnableSpringDataWebSupport
public class MongoApplication {
public static void main(String[] args) {
SpringApplication.run(MongoApplication.class, args);
}
}
使用
curl -i http://localhost:8080/article/list?content=软件
doc