密钥空间定义用于为 Redis 哈希创建实际密钥的前缀。 默认情况下,前缀设置为 。 您可以通过在聚合根级别进行设置或设置编程配置来更改此默认值。 但是,带注释的密钥空间将取代任何其他配置。getClass().getName()@RedisHashSpring中文文档

以下示例演示如何使用注释设置密钥空间配置:@EnableRedisRepositoriesSpring中文文档

例 1.密钥空间设置方式@EnableRedisRepositories
@Configuration
@EnableRedisRepositories(keyspaceConfiguration = MyKeyspaceConfiguration.class)
public class ApplicationConfig {

  //... RedisConnectionFactory and RedisTemplate Bean definitions omitted

  public static class MyKeyspaceConfiguration extends KeyspaceConfiguration {

    @Override
    protected Iterable<KeyspaceSettings> initialConfiguration() {
      return Collections.singleton(new KeyspaceSettings(Person.class, "people"));
    }
  }
}

下面的示例演示如何以编程方式设置密钥空间:Spring中文文档

例 2.编程密钥空间设置
@Configuration
@EnableRedisRepositories
public class ApplicationConfig {

  //... RedisConnectionFactory and RedisTemplate Bean definitions omitted

  @Bean
  public RedisMappingContext keyValueMappingContext() {
    return new RedisMappingContext(
      new MappingConfiguration(new IndexConfiguration(), new MyKeyspaceConfiguration()));
  }

  public static class MyKeyspaceConfiguration extends KeyspaceConfiguration {

    @Override
    protected Iterable<KeyspaceSettings> initialConfiguration() {
      return Collections.singleton(new KeyspaceSettings(Person.class, "people"));
    }
  }
}