【发布时间】:2019-12-16 03:50:24
【问题描述】:
我创建了一个 REST API,用于根据电子邮件、类型、角色、用户名等获取用户...
控制器:
@GetMapping("/users/filter")
public Flux<Users> getUsers(
@RequestParam("email") String query1,
@RequestParam("type") String query2) {
return userRepository.filterByQuery(query1, query2);
}
存储库:
@Repository
public interface UsersRepository extends ReactiveMongoRepository<Users, String>,
@Query("{ \"$or\":[ {\"email\": ?0}, {\"type\": ?1} ] }")
Flux<Users> findByQuery(String query1, String query2);
}
我得到的结果是正确的。基于以下查询。
<host>/users/filter?email=user1@learning.com&type=0
问题:如何使其动态化,以便前端开发人员可以传递任意数量的查询参数,例如
<host>/users/filter?email=user1@learning.com&type=0&role=MENTOR
<host>/users/filter?email=user1@learning.com&type=0&role=MENTOR&username=user1
...
我正在使用带有 webflux 和 mongodb 的 Spring
谢谢
【问题讨论】:
标签: mongodb spring-boot spring-webflux