2.3 启动服务

启动一个 Blade 应用非常简单,因为框架内部使用 netty 作为web服务,所以你不需要使用 tomcatjetty 这种web容器,只需要运行 main 方法执行即可。

API讲解

首先我们创建一个非常简单的demo程序

  1. Blade blade = Blade.me();
  2. blade.get("/", (req, res) -> res.text("Hello"));

这时候想直接启动服务只需要编写一行代码

  1. blade.start();

这样就可以启动,默认会监听在 tcp9000 端口。

编码的方式修改端口可以使用 blade.listen(1234) 来监听。

细心的同学可能会发现在 start 方法中有很多参数,为什么有时候会传有时候不传呢?

我们把 API 中最长的那个方法贴出来分析一下大家就清楚了

  1. start(Class<?> bootClass, String address, int port, String... args)

这里有4个参数,第一个指定启动类的Class,你会发现我写HelloWorld或者简单程序的时候没有传递这个东西,原因是我们希望在启动的时候扫描 bootClass 所在的包以及子包,这样对于开发者就可以不用配置扫描哪些包了(当然框架提供手动指定的API)。第二个参数即web服务绑定的IP地址,默认为本机 0.0.0.0 回环地址,如果不理解你可以认为是 127.0.0.1,第三个参数是端口,我们没有指定的时候默认为 9000

最后一个参数如果使用方式是这样

  1. blade.start(Application.class, args);

这里的 args 就是 main 方法中的字符串数组参数,当开发者在命令行中启动应用或者设置启动参数的时候,Blade 会读取到一些配置信息,当然如果你不用这个功能也可以不传递该参数。