springboot - spring-data-redis這個函式庫使用起來為啥很麻煩, 一個類別就得寫一次序列化類別, 我用錯了??
伊谢尔伦
伊谢尔伦 2017-06-28 09:27:25
0
1
1156

宣告處理某個型別(BaseCurrentUser)的序列化類別

    @Bean
    Jackson2JsonRedisSerializer<BaseCurrentUser> jackson2JsonRedisSerializer(ObjectMapper objectMapper) {
        Jackson2JsonRedisSerializer<BaseCurrentUser> jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer<BaseCurrentUser>(
                BaseCurrentUser.class);
        jackson2JsonRedisSerializer.setObjectMapper(objectMapper);
        return jackson2JsonRedisSerializer;
    }

    @Bean
    RedisTemplate<String, BaseCurrentUser> currentUserRedisTemplate(JedisConnectionFactory connectionFactory,
                                                                    Jackson2JsonRedisSerializer<BaseCurrentUser> jackson2JsonRedisSerializer) {
        RedisTemplate<String, BaseCurrentUser> redisTemplate = new RedisTemplate<>();
        redisTemplate.setConnectionFactory(connectionFactory);
        redisTemplate.setDefaultSerializer(jackson2JsonRedisSerializer);
        StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
        redisTemplate.setKeySerializer(stringRedisSerializer);
        redisTemplate.setHashKeySerializer(stringRedisSerializer);
        return redisTemplate;
    }

在service類別中使用

@Autowired
private RedisTemplate<String, BaseCurrentUser> currentUserRedisTemplate;

那麼我每次加上一個類型的儲存, 就得加一套@Bean??? 是這樣嘛? 還是我不會用?
或者說不這麼想, 只用他的StringRedisTemplate, 每次都用fastjson 手動序列化

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回覆(1)
我想大声告诉你

在.xml中配置redis(包括叢集、序列化),在類別中註入RedisTemplate,使用非同步回呼的方式操作redis(或直接操作)

RedisTemplate

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!