非小米电脑安装小米电脑管家的三种兼容方案
2026/10/23 3:46:59
Mono/Flux,数据到了再回调,和 WebFlux 完美配合,让 WebFlux 能不阻塞地操作关系型数据库。| JPA(Spring Data JPA) | R2DBC | |
|---|---|---|
| 模式 | 阻塞 | 非阻塞 |
| 实体注解 | @Entity | @Table |
| Repository | JpaRepository | R2dbcRepository |
| 返回值 | User / List | Mono / Flux |
| 关系映射 | 完善(@OneToMany 等) | 弱,不支持复杂关联 |
| 适用 | 传统 MVC 项目 | WebFlux / 高并发 |
r2dbc-mysql。r2dbc-postgresql。<dependencies><!--SpringWebFlux--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId></dependency><!--Lombok--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><!--R2DBC核心--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-r2dbc</artifactId></dependency><!--MySQLR2DBC驱动--><dependency><groupId>io.asyncer</groupId><artifactId>r2dbc-mysql</artifactId></dependency><!--PostgreSQL专属R2DBC驱动--><dependency><groupId>org.postgresql</groupId><artifactId>r2dbc-postgresql</artifactId></dependency></dependencies>-- 先建数据库 r2dbc(如果还没建)CREATEDATABASEIFNOTEXISTSr2dbcDEFAULTCHARACTERSETutf8mb4COLLATEutf8mb4_general_ci;-- 选中这个 r2dbc 数据库USEr2dbc;-- 建表 userCREATETABLEIFNOTEXISTSuser(idBIGINTPRIMARYKEYAUTO_INCREMENT,nameVARCHAR(100)NOTNULL,emailVARCHAR(100),ageINT);r2dbc:mysql://开头,PostgreSQL 是以r2dbc:postgresql://开头。