如何获取特定参数的项目?

时间:2019-01-03 13:48:28

标签: java mongodb spring-data

我最近与MongoDB和spring-data一起工作,我有这个问题。我想获取categoryId = cat120026的所有项目。为此,我编写了以下方法:

接口:

public interface ProductService {

    @Query("{ 'categoryId' : '\"cat120026\"' }")
    ProductModelResponse getProductByCategory();
}

接口展示:

 @Autowired
    @Qualifier("productRepository")
    private MongoRepository<ProductModel, String> repository;

    @Override
    public ProductModelResponse getProductByCategory() {
        return new ProductModelResponse(repository.findAll());
    }

但是我的查询没有收到,我得到了项目的完整列表。我看到了mongoTemplate示例,但不太了解参数中指定了哪种类。我的ProductResponseModel是我的JSON响应。该如何改善?

答案:

@Override
    public ProductModelResponse getProductByCategory() {
        Query query = new Query(Criteria.where("categoryId").is("\"cat120026\""));
        return new ProductModelResponse(pp.find(query, ProductModel.class));
    }

0 个答案:

没有答案