简单配置文件
package xxx.xxx.redis.config;
import com.alibaba.fastjson.support.spring.GenericFastJsonRedisSerializer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
import org.springframework.data.redis.core.ReactiveRedisTemplate;
import org.springframework.data.redis.serializer.RedisSerializationContext;
import org.springframework.data.redis.serializer.StringRedisSerializer;
@Configuration
public class RedisAutoConfig {
@Bean
public ReactiveRedisTemplate<String, Object> reactiveRedisTemplate(LettuceConnectionFactory connectionFactory) {
StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
GenericFastJsonRedisSerializer fastJsonRedisSerializer = new GenericFastJsonRedisSerializer();
RedisSerializationContext.SerializationPair<String> keySerializationPair =
RedisSerializationContext.SerializationPair.fromSerializer(stringRedisSerializer);
RedisSerializationContext.SerializationPair<Object> valueSerializationPair =
RedisSerializationContext.SerializationPair.fromSerializer(fastJsonRedisSerializer);
RedisSerializationContext.SerializationPair<Object> hashValueSerializationPair =
RedisSerializationContext.SerializationPair.fromSerializer(fastJsonRedisSerializer);
RedisSerializationContext<String, Object> context = new RedisSerializationContext<String, Object>() {
@Override
public SerializationPair getKeySerializationPair() {
return keySerializationPair;
}
@Override
public SerializationPair getValueSerializationPair() {
return valueSerializationPair;
}
@Override
public SerializationPair getHashKeySerializationPair() {
return keySerializationPair;
}
@Override
public SerializationPair getHashValueSerializationPair() {
return hashValueSerializationPair;
}
@Override
public SerializationPair getStringSerializationPair() {
return keySerializationPair;
}
};
return new ReactiveRedisTemplate<>(connectionFactory, context);
}
}