So implementieren Sie verschachtelte Schleifen mit Spring Webflux
Posted: 20 Jan 2025, 15:05
haben die folgende Logik in der Spring-Webflux-Anwendung implementiert und fetchResult(resultKeys) wird aufgerufen, bevor überhaupt resultKeys generiert werden, die zum Aufrufen der fetchResult-Methode erforderlich sind. So konvertieren Sie die folgenden verschachtelten Schleifen in Spring Webflux, sodass fetchResult() nach dem Generieren von resultKeys aufgerufen wird.
Code: Select all
Map matchesByCom = intermediateObject.getMatchDetails();
Set resultKeys = new HashSet();
intermediateObject.getNames().forEach(name -> {
final Set distinctIdsFinal = intermediateObject.getNameToIdMapping().get(name);
matchesByCom.keySet().parallelStream().filter(mKey -> mKey.getName().equals(name))
.forEach(mKey -> {
if (CollectionUtils.isEmpty(distinctIdsFinal)
|| (CollectionUtils.isEmpty(requestDTO.getLIds()))) {
resultKeys.add(name + mKey.getCom());
}
if (CollectionUtils.isNotEmpty(distinctIdsFinal)) {
distinctIdsFinal.forEach(Id -> {
resultKeys.add(name + mKey.getCom() + "_" +Id);
});
}
});
});
resultIdSetMono = fetchResult(resultKeys)