redisTemplate.opsForValue();//操作字符串 redisTemplate.opsForHash();//操作hash redisTemplate.opsForList();//操作list redisTemplate.opsForSet();//操作set redisTemplate.opsForZSet();//操作有序set
package com.wj.demo.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; import org.springframework.data.redis.serializer.StringRedisSerializer; @Configuration public class RedisConfig { @Bean public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) { RedisTemplate<String, Object> template = new RedisTemplate<String, Object>(); template.setConnectionFactory(redisConnectionFactory); template.setKeySerializer(new StringRedisSerializer()); template.setValueSerializer(new GenericJackson2JsonRedisSerializer()); template.setHashKeySerializer(new GenericJackson2JsonRedisSerializer()); template.setHashValueSerializer(new GenericJackson2JsonRedisSerializer()); template.afterPropertiesSet(); return template; } }
テストは成功しました。
redis にオブジェクトを保存する 2 つの方法
このメソッドはリストまたはセットを使用して保存します。このメソッドは実際に必要な効果を実現できますが、属性の各変更には 3 つの手順が必要なため、パフォーマンスのオーバーヘッドが非常に大きくなります。大きい。 。 1. 最初に逆シリアル化する; 2. 変更する; 3. シリアル化
メソッド 2 (ハッシュ)
この書き方では、目的を達成できるだけでなく、過剰なリソース消費の問題も解決しますが、ユーザーの ID という別の問題も引き起こします。データの冗長性
#記述方法 2:
対応する属性データは、キー (ユーザー ID) フィールド (属性) を通じて操作できます。 label) を使用すると、データを繰り返し保存する必要がなく、シリアル化、修復、操作で問題が発生することもありません。
推奨学習:
Redis ビデオ チュートリアル以上がRedis がオブジェクトの保存を実装する方法について話しましょうの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。