Java 无法在Spring Reactive Redis缓存中存储布尔值

Java 无法在Spring Reactive Redis缓存中存储布尔值,java,caching,reactive-programming,project-reactor,spring-data-redis,Java,Caching,Reactive Programming,Project Reactor,Spring Data Redis,我在存储布尔值时遇到此异常 我的redis配置: " java.lang.IllegalStateException: Cannot serialize value of type class java.lang.Boolean without a serializer at org.springframework.data.redis.serializer.DefaultRedisElementWriter.write(DefaultRedisElementWriter.ja

我在存储布尔值时遇到此异常

我的redis配置:

" java.lang.IllegalStateException: Cannot serialize value of type class java.lang.Boolean without a serializer
    at org.springframework.data.redis.serializer.DefaultRedisElementWriter.write(DefaultRedisElementWriter.java:54) ~[spring-data-redis-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.data.redis.serializer.RedisSerializationContext$SerializationPair.write(RedisSerializationContext.java:287) ~[spring-data-redis-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.data.redis.core.DefaultReactiveHashOperations.rawHashValue(DefaultReactiveHashOperations.java:286) ~[spring-data-redis-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
reactiveDistemplate reactiveDistemplate通用(reactiveDisconnectionFactory reactiveDisconnectionFactory){
GenericJackson2JsonRedisSerializer valueSerializer=新的GenericJackson2JsonRedisSerializer();
RedisSerializationContext.RedisSerializationContextBuilder生成器=
newSerializationContext(新的StringRedisSerializer());
RedisSerializationContext=builder.value(valueSerializer.build();
返回新的ReactiveDistemplate(ReactiveDisconnectionFactory,上下文);
}

在构建上下文时,我们还需要在hashValue中设置序列化程序

ReactiveRedisTemplate<String, Object> reactiveRedisTemplateGeneric(ReactiveRedisConnectionFactory reactiveRedisConnectionFactory) {
    GenericJackson2JsonRedisSerializer valueSerializer = new GenericJackson2JsonRedisSerializer();
    RedisSerializationContext.RedisSerializationContextBuilder<String, Object> builder =
            RedisSerializationContext.newSerializationContext(new StringRedisSerializer());
    RedisSerializationContext<String, Object> context = builder.value(valueSerializer).build();
    return new ReactiveRedisTemplate<>(reactiveRedisConnectionFactory, context);
}
RedisSerializationContext=builder.value(valueSerializer).hashValue(valueSerializer.build();
RedisSerializationContext<String, Object> context = builder.value(valueSerializer).hashValue(valueSerializer).build();