getUserDetails Method returns Mono of Type JsonNode. But I Actually want to return a Mono<User.java> or Flux<User.java>. please help modifying getBulkUserInfo or getUserDetails to get the Mono<User.java> or Flux<User.java>
public Mono<JsonNode> getUser(BigInteger Id){
    return this.client.get()
            .uri("/URL/{Id}",Id)
            .retrieve()
            .bodyToMono(JsonNode.class);
}
public Flux getBulkUsers(List<BigInteger> Ids){
    return Flux.fromIterable(Ids).flatMap(this::getUser);
}
But The json response from the Url is something like
{
"resultholder": {
            "totalResults": "1",
            "profiles": {
                "profileholder": {
                    "user": {
                        "country": "IND",
                        "zipCode": "560048",
                        "name":"Test"
                    }
                }
            }            
        }
}
I tried different ways but nothing worked subscribe() and .doOnNext(resp -> resp.get("resultholder").get("profiles").get("profileholder").get("user"))
    .bodyToMono(JsonNode.class)
.doOnNext(resp ->{return
 JSONUtils.deserialize(resp.get("resultholder").get("profiles").get("profileholder").get("user"), User.class)})
 
    