Redis
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> Redis

Làm khô một RedisTemplate chung trong Mùa xuân 4

Tôi gặp vấn đề tương tự. Bạn có thể tạo một bean chung cho việc này và sử dụng GenricJackson2JsonRedisSerializer. Vấn đề là bằng cách sử dụng điều này, json sẽ được lưu với một số dữ liệu bổ sung để giải mã hoạt động sau này.

Một cách khác sẽ là sử dụng Jackson2JsonRedisSerializer nhưng nó cần phiên bản Class của loại chung để hoạt động, phù thủy tôi không thể tìm ra cách lấy.

@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;
}

Sử dụng trên lớp bộ nhớ cache:

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



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kết nối với Redis đang chạy trong Docker Container từ máy chủ

  2. Những trường hợp sử dụng nào mà Redis được ưu tiên hơn Aerospike?

  3. làm cách nào để các phiên hoạt động bằng redis, express &socket.io?

  4. Redis và Memcache hay chỉ Redis?

  5. Redis - Bảng Lua làm giá trị trả về - tại sao điều này không hoạt động