Skip to main content

Redis 特异性

dbVisitor 通过 JDBC-Redis 驱动,实现基于 JDBC 协议对 Redis 数据源的访问。在使用时需要注意以下几点:

  • 使用 Redis 命令操作数据,可用的命令参考 支持的命令列表
  • 支持使用 JdbcTemplate方法注解Mapper 文件 三种方式操作 Redis 数据源。
  • 支持使用 规则参数传递 进行复杂命令的生成和参数传递。
  • 支持使用 ResultSetExtractor、RowMapper 等接口接收查询结果。
  • 支持在 Mapper File 中使用 动态 SQL 标签生成执行命令。
  • 不支持 构造器 API通用 Mapper API
  • 不支持 对象映射结果集映射
  • 不支持 JdbcTemplateexecuteBatch 方法
  • 不支持 JdbcTemplate 的存储过程 API
贴士

虽然在使用 Redis 时 dbVisitor 不支持 对象映射,但仍然可以通过在建立对象映射后借助已有 API 实现关系型数据库和 Redis 之间的数据同步。

概念类比

Redis 驱动提供的命令中,不同命令会有不同的执行结果,主要有三种(更新数单行结果多行结果)其中:

  • 更新数,可以类比关系型数据库的 INSERT、UPDATE、DELETE 语句,需要使用 executeUpdate 方法执行并获取结果。
  • 单行结果/多行结果:则相当于关系型数据库的在使用 SELECT 语句时获取查询结果集。在 Redis 驱动中所有读取类命令和部分无法通过更新数来返回的命令均使用结果集形式。

使用指引

执行命令

  • 命令方式,使用 JdbcTemplate 执行原始的 Redis 命令并进行读写数据。
  • 注解方式,在 Mapper 接口上使用 @Insert、@Update、@Delete 注解,将 Redis 操作业务化。
  • 文件方式,在 Mapper 文件中通过标签配置执行命令。

读写 Redis 数据类型

  • 字符串,使用 dbVisitor 读写 Redis 的 String 类型数据。
  • 哈希,使用 dbVisitor 读写 Redis 的 Hash 类型数据。
  • 列表,使用 dbVisitor 读写 Redis 的 List 类型数据。
  • 集合,使用 dbVisitor 读写 Redis 的 Set 类型数据。
  • 有序集合,使用 dbVisitor 读写 Redis 的 Sorted Set 类型数据。