nosql--RedisTemplate定制化
- 1、序列化
- 2、如果使用redis中保存数据会使用默认的序列化机制,导致redis中保存的对象不可视
- 2.1将所有的对象以JSON的形式保存
- 2.2配置reids自定义配置
- 2.3转化成功
- 2.4配置文件代码
- 3redis客户端
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*/@Beanpublic 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