第一个Vert.x应用程序

时间:2020-01-09 10:47:21  来源:igfitidea点击:

一旦安装了Vert.x,就可以创建第一个Vert.x应用程序了。本教程将逐步指导我们创建第一个Vert.x应用程序。

创建Vertx实例

在我们自己的Java应用程序中使用嵌入Vert.x的第一步是创建一个Vertx实例。这是创建Vertx实例的方法:

import io.vertx.core.Vertx;

public class VertxApp {

    public static void main(String[] args) {
        Vertx vertx = Vertx.vertx();
    }

}

我们可以通过调用Vertx.vertx()创建一个Vertx实例。

" Vertx"实例在内部创建了许多线程来处理各个顶点之间的消息交换。这些线程不是守护程序线程,因此即使创建Vertx实例的主线程终止了,它们也可以防止JVM关闭。

创建一个Verticle

除了所有线程管理,创建事件总线等(全部都是通信和基础结构任务)以外," Vertx"实例本身并没有做很多事情。为了使应用程序做一些有用的事情,我们需要在" Vertx"实例内部部署一个或者多个顶点(组件)。

必须先创建一个顶点,然后才能部署它。为此,我们可以创建一个扩展AbstractVerticle的类。这是一个垂直示例:

package examples.vertx;

import io.vertx.core.AbstractVerticle;
import io.vertx.core.Future;

public class MyVerticle extends AbstractVerticle {

    @Override
    public void start(Future<Void> startFuture) {
        System.out.println("MyVerticle started!");
    }

    @Override
    public void stop(Future<Void> stopFuture) throws Exception {
        System.out.println("MyVerticle stopped!");
    }

}

一个顶点具有一个" start()"和一个" stop()"方法,这些方法在顶点被部署和取消部署时被调用。我们应该在start()方法内执行任何必要的初始化工作,并在stop()方法内执行任何必要的清理工作。

部署Verticle

一旦创建了一个Verticle,就需要将其部署到Vertx实例中。我们可以在Vertx实例上使用deployVerticle()方法之一部署一个Verticle。这是一个Vert.x Verticle部署示例:

import io.vertx.core.Vertx;

public class VertxVerticleMain {

    public static void main(String[] args) {
        Vertx vertx = Vertx.vertx();

        vertx.deployVerticle(new MyVerticle());
    }
}

使用以下方法调用来部署该Verticle:

vertx.deployVerticle(new MyVerticle());

该方法调用将作为参数传递的MyVerticle实例部署到deployVerticle()方法中。

" Vertx"实例还有另一个" deployVerticle()"方法,该方法将要部署的顶点的完全合格的类名作为参数。这是使用该方法部署MyVerticle的样子:

vertx.deployVerticle("examples.vertx.MyVerticle");

有更多选项可用于部署verticle。例如,我们可以指定要部署给定verticle类的多少个verticle实例。