キースペース
キースペースは、Redis ハッシュの実際のキーを作成するために使用されるプレフィックスを定義します。デフォルトでは、プレフィックスは getClass().getName()
に設定されています。このデフォルトを変更するには、集約ルートレベルで @RedisHash
を設定するか、プログラムによる構成を設定します。ただし、アノテーション付きのキースペースは他の構成よりも優先されます。
次の例は、@EnableRedisRepositories
アノテーションを使用してキースペース構成を設定する方法を示しています。
例 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"));
}
}
}
次の例は、プログラムでキースペースを設定する方法を示しています。
例 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"));
}
}
}