Vert.X 4 Web OpenAPI 路由器 blockingHandler
Vert.X 4 Web OpenAPI Router blockingHandler
为什么vertx-web-openapi(随vert.x 4.0.0-milestone5发布)的RouterFactory不支持blockingHandlers?
例如
routerFactory.operation("getPet").handler(Server::get); // this is supported
routerFactory.operation("getPet").blockingHandler(Server::get); // this is not supported
因为我几乎所有的路由在后面都有 SQL 连接,这意味着每次都要调用很多样板文件 vertx.executeBlocking。
我是不是漏掉了什么?
您可以轻松地创建一个阻塞处理程序,使用小样板将您的处理程序包装在 io.vertx.ext.web.impl.BlockingHandlerDecorator
:
routerBuilder
.operationId("myOperation")
.handler(new BlockingHandlerDecorator(handler, true));
无需手动调用vertx.executeBlocking
。
为什么vertx-web-openapi(随vert.x 4.0.0-milestone5发布)的RouterFactory不支持blockingHandlers?
例如
routerFactory.operation("getPet").handler(Server::get); // this is supported
routerFactory.operation("getPet").blockingHandler(Server::get); // this is not supported
因为我几乎所有的路由在后面都有 SQL 连接,这意味着每次都要调用很多样板文件 vertx.executeBlocking。
我是不是漏掉了什么?
您可以轻松地创建一个阻塞处理程序,使用小样板将您的处理程序包装在 io.vertx.ext.web.impl.BlockingHandlerDecorator
:
routerBuilder
.operationId("myOperation")
.handler(new BlockingHandlerDecorator(handler, true));
无需手动调用vertx.executeBlocking
。