Redis
 sql >> Teknologi Basis Data >  >> NoSQL >> Redis

MENGERINGKAN RedisTemplate generik di Musim Semi 4

Saya memiliki masalah yang sama. Anda dapat membuat kacang generik untuk ini, dan menggunakan GenricJackson2JsonRedisSerializer. Masalahnya adalah dengan menggunakan ini json akan disimpan dengan beberapa data tambahan agar deserialisasi berfungsi nanti.

Cara lain adalah dengan menggunakan Jackson2JsonRedisSerializer tetapi membutuhkan instance Kelas dari tipe generik untuk bekerja, saya tidak tahu cara mendapatkannya.

@Bean("objectRedisTemplate")
public <T> RedisTemplate<String, T> objectRedisTemplate(RedisConnectionFactory redisConnectionFactory) {
    RedisTemplate<String, T> redisTemplate = new RedisTemplate<>();

    redisTemplate.setConnectionFactory(redisConnectionFactory);

    RedisSerializer<String> serializer = new StringRedisSerializer();
    redisTemplate.setKeySerializer(serializer);
    redisTemplate.setHashKeySerializer(serializer);

    redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer());

    return redisTemplate;
}

Penggunaan pada kelas cache:

@Autowired
@Qualifier("objectRedisTemplate")
private RedisTemplate<String, MyTypeA> redisTemplate;



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Koneksi ditolak untuk Redis di Heroku

  2. Eksekusi paralel dengan StackExchange.Redis?

  3. Transaksi Redis &Skrip Lua yang Berjalan Lama

  4. Java+Redis vs efisiensi Java biasa untuk aplikasi intensif data?

  5. Cara membuat koneksi Redis dengan Master dan Slave