【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
添加 maven 依赖
<!-- redis serializer -->
<dependency>
<groupId>de.ruedigermoeller</groupId>
<artifactId>fst</artifactId>
<version>2.57</version>
</dependency>
实现 RedisSerializer 接口
public class FSTSerializer implements RedisSerializer<Object> {
private FSTConfiguration fstConfiguration ;
public FSTSerializer() {
fstConfiguration = FSTConfiguration.getDefaultConfiguration();
fstConfiguration.setClassLoader(Thread.currentThread().getContextClassLoader());
}
@Override
public byte[] serialize(Object obj) {
if (ObjectUtil.isEmpty(obj)) {
return null;
}
return fstConfiguration.asByteArray(obj);
}
@Override
public Object deserialize(byte[] bytes) {
if (ObjectUtil.isEmpty(bytes)) {
return null;
}
return fstConfiguration.asObject(bytes);
}
}
定义一个 bean
@Bean
public RedisTemplate<String, Object> customRedisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(redisConnectionFactory);
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setValueSerializer(new FSTSerializer());
return redisTemplate;
}
然后就可以使用了
@Autowired
private RedisTemplate<String, Object> myRedisTemplate;
myRedisTemplate.opsForValue().get("hello");
来源:oschina
链接:https://my.oschina.net/lemos/blog/3147823