SpringBoot快速连接Redis
1、添加Maven依赖:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>
2核心配置:配置application.yml文件
spring: data: redis: host: 192.168.65.214 port: 6379 password: 12345 .....
当引入maven,并配置好文件后,SpringBoot框架会默认在IOC文件里注入一个RedisTemplate的实现类。
记住一个对象:
@Resource
private RedisTemplateredisTemplate;
按组操作:(使用方式几乎与客户端一一对应)
redisTemplate.opsForValue().xxx //string类型
redisTemplate.opsForSet().xxx //set类型
redisTemplate.opsForHash().xxx //hash类型
redisTemplate.opsForList().xxx //list类型
redisTemplate.opsForZset().xxx //Zset类型
redisTemplate.opsForGeo().xxx //Geo类型
redisTemplate.opsForHyperLogLog().xxx //hyperLogLog类型
redisTemplate.opsForStream().xxx //stream类型
redisTemplate.opsForValue().setBit() //bitmap类型
为什么bit没有一个单独的操作类型?bitmap类型 被合并到了redisTemplate的String类型当中
RedisTemplate中文乱码问题
增加一个配置类:
@Configuration @EnableCaching public class RedisConfig { @Bean public RedisTemplateredisTemplate(RedisConnectionFactory redisConnectionFactory){ RedisTemplateredisTemplate = new RedisTemplate<>(); redisTemplate.setConnectionFactory(redisConnectionFactory); // GenericJackson2JsonRedisSerializer jsonSerializer = new GenericJackson2JsonRedisSerializer(); StringRedisSerializer stringRedisSerializer = new StringRedisSerializer(); GenericToStringSerializergenericToStringSerializer = new GenericToStringSerializer<>(String.class); //指定key和value的序列化方式 redisTemplate.setKeySerializer(stringRedisSerializer); redisTemplate.setValueSerializer(genericToStringSerializer); redisTemplate.setHashKeySerializer(stringRedisSerializer); redisTemplate.setHashValueSerializer(stringRedisSerializer); redisTemplate.afterPropertiesSet(); return redisTemplate; } }
测试:
本文原创,转载必追究版权。