2. Mapper API
通用用法见核心 API 的5.2 Mapper API;共用能力见参数传递与规则和结果接收,表格中的状态链接说明各数据源的具体差异。
| 数据源 | 方法注解 | Mapper 读写 | 主键策略 | 分页查询 | 执行选项 | 调用构造器 | 引用文件 Mapper | Session 管理 |
|---|---|---|---|---|---|---|---|---|
| MySQL | ✓ 支持 | ✓ 支持 | ◐ 部分 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| PostgreSQL | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| Oracle | ✓ 支持 | ✓ 支持 | ◐ 部分 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| SQL Server | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| DB2 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| H2 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| ClickHouse | ◐ 部分 | ◐ 部分 | ◐ 部分 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| Redis | ◐ 部分 | ✕ 不支持 | ◐ 部分 | ✕ 不支持 | ◐ 部分 | ✕ 不支持 | ✓ 支持 | ✓ 支持 |
| MongoDB | ◐ 部分 | ✓ 支持 | ◐ 部分 | ✓ 支持 | ◐ 部分 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| ES 6 | ✓ 支持 | ◐ 部分 | ◐ 部分 | ✓ 支持 | ◐ 部分 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| ES 7 | ✓ 支持 | ◐ 部分 | ◐ 部分 | ✓ 支持 | ◐ 部分 | ✓ 支持 | ✓ 支持 | ✓ 支持 |
| Milvus | ◐ 部分 | ◐ 部分 | ◐ 部分 | ✓ 支持 | ◐ 部分 | ✓ 支持 | ◐ 部分 | ✓ 支持 |
- 方法注解:查询、写入、
@Execute、多行命令拼接及异常处理。 - Mapper 读写:BaseMapper 增删改查、替换、upsert、样本查询及 Map 参数写入。
- 主键策略:手工赋值、默认主键、生成键回填、
selectKey及复合主键。 - 分页查询:方法注解、BaseMapper 和文件调用的分页。
- 执行选项:执行方式、超时、取数设置及结果集类型,包括滚动结果。
- 调用构造器:通过 Mapper 或 Session 获取并使用构造器。
- 引用文件 Mapper:按 statement ID 查询、写入及读取返回值。
- Session 管理:创建 Mapper、复用 Session 及跨 API 访问数据。