【发布时间】:2019-04-12 00:59:17
【问题描述】:
我将开发一个符合新功能 Webflux 的 Spring Boot 应用程序。 Mysql 的驱动 JDBC 是否存在?
我只找到了一些 NoSql DB(例如 MongoDB)的驱动程序。
你能帮帮我吗? 谢谢,问候。
更新:
在R2DBC项目的官方网站上有驱动列表:https://r2dbc.io/
【问题讨论】:
标签: java spring spring-boot spring-webflux reactive
我将开发一个符合新功能 Webflux 的 Spring Boot 应用程序。 Mysql 的驱动 JDBC 是否存在?
我只找到了一些 NoSql DB(例如 MongoDB)的驱动程序。
你能帮帮我吗? 谢谢,问候。
更新:
在R2DBC项目的官方网站上有驱动列表:https://r2dbc.io/
【问题讨论】:
标签: java spring spring-boot spring-webflux reactive
实际上没有任何对关系数据库的响应式支持。但自从 Spring Data 团队致力于 R2DBC 以来,时间不长,它将提供从关系数据库中响应式访问数据的能力。敬请关注:https://github.com/r2dbc
编辑
第一个版本已经发布,更多详情请看这里:https://github.com/r2dbc/r2dbc-postgresql/tags
【讨论】:
存在一个用于 MySQL 的异步驱动程序,名为 jasync-sql:
【讨论】:
不,MySQl 没有响应式驱动程序。 Postgres 有一个:
https://github.com/r2dbc/r2dbc-client
它使用来自项目负责人的所有反应位(集合作为通量返回)。当然,您又回到了使用准备好的语句。并直接从 Serch 结果中提取数据。
还有一个用于 oracle DB 的:
https://github.com/oracle/oracle-db-examples/tree/master/java/AoJ
但是它使用了阻塞的 JDBC 调用并且只隐藏了线程池后面的问题。然而,它代表了甲骨文目前为解决这个问题所做的努力。这不是一件小事,因为在使用一致状态的关系数据库时有一定的哲学。这就是为什么你的查询结果是一次全部返回的原因,不像 mongodb 可以在它进来时返回结果。
因此,任何 ORM(hibernate、eclipselink)工具都无处可去。 我认为对于生产代码,我们现在被阻塞调用所困。
【讨论】: