知道为什么下面的代码会返回 null 的单声道吗?我知道为什么契约(Contract)会允许它,但我希望 Spring 代码返回 true 或 false。
public interface SampleRepository extends ReactiveCrudRepository<Sample, String> {
@ExistsQuery("{ userId: ?0 }")
Mono<Boolean> existsWithUserId(String userId);
@Query("{ userId: ?0 }")
Mono<Sample> findWithUserId(String userId);
}
最佳答案
也许这是以前版本的一个错误。使用 Spring Boot 2.0.5(Spring 5.0.9、Spring Data 2.0.10)和响应式 mongo 驱动程序 3.8.2,它对我来说工作正常 - null 永远不会返回。
请注意,我明确使用较新的 mongo-driver-async 3.8.2 而不是当前的默认版本,因为后者包含另一个错误,已在较新版本中修复。
关于java - Spring ReactiveCrudRepository ExistsQuery 方法返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51270914/