如何从VertX Future对象中获取值

时间:2020-05-14 13:46:50

标签: vert.x vertx-verticle

我无法从Future对象中检索值。下面是供参考的代码

Future<Configure> conf = getLatestVersion(request);
Configure cc = conf.result();
float previousVersion = cc.getVersionNo();

这是getLatestVersion(request)的实现


public Future<Configure> getLatestVersion(Configure request) {
        Future<Configure> result = Future.future();
        configRepository.getLatestVersionNo(request).setHandler(res -> {
            if (res.succeeded()) {
                result.complete(res.result());
                System.out.println("==result from db =="+res.result());
                System.out.println("== getVersionNo ="+res.result().getVersionNo());
            } else {
                result.fail(res.cause());
            }
        });
        return result;

    }

在SOP中,我可以从result.result()result.result().getVersion()中获取值,但是将这种方法的结果返回给上述调用方之后,我将无法获取这些值。

我想在这里实现的是我需要从Configure中提取Future<Configure> pojo数据。

1 个答案:

答案 0 :(得分:0)

您应该使用SELECT name, (CASE WHEN floor != ceiling THEN CONCAT(floor, '-', ceiling) AS range ELSE floor AS range END) FROM tablename 回调(或早期版本中的onComplete()):

setHandler()