Redis的五种存储数据类型
字符串、列表、集合、有序集合、哈希
1、添加依赖
<!--集成redis-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!--<!–redis采用lettuce做客户端,lettuce需要配置连接池–>-->
<!-- <dependency>-->
<!-- <groupId>org.apache.commons</groupId>-->
<!-- <artifactId>commons-pool2</artifactId>-->
<!-- </dependency>-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.83</version>
</dependency>
2、配置文件配置数据库
#这里只是redis的最简单配置
spring:
redis:
database: 0 # Redis数据库索引(默认为0)
host: 127.0.0.1 # Redis服务器地址
port: 6379 # Redis服务器连接端口
password: # Redis服务器连接密码(默认为空)
lettuce:
pool:
max-active: 8 # 连接池最大连接数(使用负值表示没有限制) 默认 8
max-wait: -1 # 连接池最大阻塞等待时间(使用负值表示没有限制) 默认 -1
max-idle: 8 # 连接池中的最大空闲连接 默认 8
min-idle: 0 # 连接池中的最小空闲连接 默认 0
3、使用Redis
@Autowired
RedisTemplate redisTemplate;
@RequestMapping("/test")
@ResponseBody
public Object test(){
redisTemplate.opsForValue().set("lanqiao","塔里木大学"); //操作字符串
Object value = redisTemplate.opsForValue().get("lanqiao");
String value1 = String.valueOf(value);
HashMap result = new HashMap();
result.put("message",value1);
return result;
}
4、Redis配日类
@Configuration
public class RedisConfig {
/**
* 把默认的序列化方式改成GenericFastJsonRedisSerializer
* @param
* @return
*/
@Bean
public RedisTemplate<String, Serializable> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
// 创建实例对象
RedisTemplate<String, Serializable> redisTemplate = new RedisTemplate<>();
// 设置key序列化方式
redisTemplate.setKeySerializer(new StringRedisSerializer()); // string数据类型的key序列化
redisTemplate.setHashKeySerializer(new StringRedisSerializer()); // hash数据类型的key序列化
// 设置value序列化方式
redisTemplate.setValueSerializer(new GenericFastJsonRedisSerializer()); // string数据类型的value序列化
redisTemplate.setHashValueSerializer(new GenericFastJsonRedisSerializer()); // hash数据类型的value序列化
redisTemplate.setConnectionFactory(redisConnectionFactory);
return redisTemplate;
}
}