序:
在使用Vertx开发过程中,有数据库操作,发现原生自带mysql Client过于繁复,且代码可阅读性极差,在想使用ORM工具过程中,发现了对Vertx理解过于粗浅。
Vertx没有提供傻瓜化的框架:
rdbms: 关系数据库管理系统
为什么vert.x没有提供傻瓜化的框架呢?因为用vert.x的人,本身对于rdbms有些说白了,就是瞧不上,因为数据库会先于应用服务器触发吞吐瓶颈,一个传统系统,比如是tomcat和mysql的组合,当并发量上去之后,mysql会先于tomcat之前顶不住,所以第一步一般是引入nosql以增加吞吐,比如cassandra,同时会弱化mysql等的rdbms的属性,以提速增加吞吐,比如用pg替换掉mysql,用jsonb类型替换掉传统的table表,然后才是把tomcat等换成vert.x,等到你用vert.x的时候,vert.x面对的是一个json等的数据结构,以及nosql的数据库,所以vert.x优先解决跟nosql以及json等半结构或者无结构数据格式的交互问题,提供能够跟json,文件系统的api,而不是去适应传统的rdbms,那个是落后产能。
Vertx核心包,还是提供了mysql client。
<dependency>
<groupId>io.vertx</groupId>
<artifactId>vertx-mysql-client</artifactId>
<version>4.2.1</version>
</dependency>
// 创建数据库连接池
MySQLPool client = MySQLPool.pool(connectOptions, poolOptions);
// 获取连接池中的连接,
client.getConnection().compose(...