Chr*_*ris 2 spring mongodb reactive-programming spring-data-mongodb project-reactor
我有一个扩展ReactiveMongoRepository的MovieRepository.我想以反应方式保存单个POJO.但ReactiveMongoRepository不为Mono或Publisher提供保存方法.我必须使用block()方法或使用saveAllReactiveMongoRepository中的方法.
public Mono<ServerResponse> create(ServerRequest request) {
Mono<Movie> movieMono = request.bodyToMono(Movie.class);
return movieRepository.save(movieMono.block()) //
.flatMap((movie) -> ServerResponse.ok().body(fromObject(movie)));
}
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法来解决这类问题?我不认为使用块方法是反应式编程的好主意.
你可以这样做
Mono<Movie> movieMonoSaved = movieMono.flatMap(movieRepository::save);
return ServerResponse.status(HttpStatus.CREATED).body(movieMonoSaved, Movie.class);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2341 次 |
| 最近记录: |