对于最新的稳定版本,请使用 Spring Data Redis 3.5.3spring-doc.cadn.net.cn

键空间

Keyspaces 定义用于为 Redis Hash 创建实际键的前缀。 默认情况下,前缀设置为getClass().getName(). 您可以通过将@RedisHash在聚合根级别或通过设置编程配置。 但是,带注释的键空间将取代任何其他配置。spring-doc.cadn.net.cn

以下示例显示如何使用@EnableRedisRepositories注解:spring-doc.cadn.net.cn

示例 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-doc.cadn.net.cn

示例 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"));
    }
  }
}