Mono#flatMap
принимает Function
, который преобразует значение в другое Mono
.Этот Mono может представлять некоторую асинхронную обработку, например HTTP-запрос.
С другой стороны, Mono#map
принимает Function
, который преобразует значение типа T
в другое значение типаR
.Таким образом, это преобразование выполняется обязательно и синхронно (например, преобразование String
в URL
экземпляр).
Другая тонкость с flatMap
заключается в том, что оператор подписывается на сгенерированный Mono
, в отличие отчто произойдет, если вы передадите тот же Function
на map
.