1.添加依赖包
<--Redis 依赖包--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency><--Json 依赖包>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>2.0.7</version>
</dependency>
2.写RedisConfig配置类
@Configuration
public class RedisConfig {@Bean(name = "redisTemplate")
//如果没有redisTemplate Bean才创建,用以保证如果没有redisTemplate只有一个
@ConditionalOnMissingBean(name = "redisTemplate")
public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate<Object, Object> template = new RedisTemplate<>();//使用fastjson序列化
FastJsonRedisSerializer fastJsonRedisSerializer = new FastJsonRedisSerializer(Object.class);
// value值的序列化采用fastJsonRedisSerializer
template.setValueSerializer(fastJsonRedisSerializer);
template.setHashValueSerializer(fastJsonRedisSerializer);// key的序列化采用StringRedisSerialize
template.setKeySerializer(new StringRedisSerializer());
template.setHashKeySerializer(new StringRedisSerializer());template.setConnectionFactory(redisConnectionFactory);
return template;
}
}
3.在资源文件配置redis信息
redis:
database: 0 #使用的Redis库
host: 127.0.0.1
port: 6379
password:
timeout: 1000
jedis: #jedis连接池
pool:
max-active: 8
max-wait: -1
max-idle: 8
min-idle: 0
4.写Redis工具类
public class RedisUtil {
@Autowired
private RedisTemplate redisTemplate;/**
* 添加key,value
*
* @param key 键
* @param value 值
*/
public void add(String key, Object value) {
redisTemplate.opsForValue().set(key, JSON.toJSON(value));
}/**
* 删除key
*
* @param key 键
*/
public void deleteKey(String key) {
redisTemplate.delete(key);
}/**
* 获取key值
*
* @param key 键
* @return
*/
public Object get(String key) {
return redisTemplate.opsForValue().get(key);
}
}
4.编写测试类
@SpringBootTest
@RunWith(SpringRunner.class)
public class AppTest {@Autowired
RedisUtil redisUtil;
@Test
public void testRedis(){
redisUtil.add("key1","value1");
}}
结果显示: