spring data mongo queryByExample

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

    原文作者:codecraft
    原文地址: https://segmentfault.com/a/1190000007362041
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞