nosql--RedisTemplate定制化

2023-12-25 23:31:25

1、序列化

stringRedisTemplate
RedisTemplate<Object,Object> redisTemplate
在这里插入图片描述
在这里插入图片描述

2、如果使用redis中保存数据会使用默认的序列化机制,导致redis中保存的对象不可视

在这里插入图片描述

2.1将所有的对象以JSON的形式保存

默认序列化是JdkSerializationRedisSerializer
在这里插入图片描述
如果没有redisTemplate配置
在这里插入图片描述

2.2配置reids自定义配置

在这里插入图片描述

2.3转化成功

在这里插入图片描述

2.4配置文件代码

package com.example.boot3.redis.config;

import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnSingleCandidate;
import org.springframework.context.annotation.Bean;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;

/**
 * @author jitwxs
 * @date 2023年12月25日 22:23
 */
public class AppTedisConfiguration {
   /*
   允许Object类型的key-value,都可以转换成json进行存储
   @param redisConnecctionFactory 自动配置好连接工厂
   @return
   */
    @Bean
    public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
        RedisTemplate<Object, Object> template = new RedisTemplate();
        template.setConnectionFactory(redisConnectionFactory);
//        把对象转为json字符串的序列化工具
        template.setDefaultSerializer(new GenericJackson2JsonRedisSerializer());
        return template;
    }
}

3redis客户端

RedisTemplate、StringRedisTemplae:操作redis的工具类
要从redis的连接厂获取连接才能操作redis
Redis 客户端:
jedis
Lettuce:默认
配置jedis、lettuce的底层参数
在这里插入图片描述

#设置lettuce的底层参数
#spring.data.redis.client-type=lettuce
#spring.data.redis.lettuce.pool.enabled=true
##线程池
#spring.data.redis.lettuce.pool.max-active=8

#设置jedis的底层参数
spring.data.redis.client-type=jedis
spring.data.redis.jedis.pool.enabled=true
spring.data.redis.jedis.pool.max-active=8

文章来源:https://blog.csdn.net/m0_50207524/article/details/135210172
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。