
redis五种数据类型:string ,hash, set ,sortedSet, hash
redis是一个nosql, 单进程单线程,线程安全
redis将所有数据都存在内存中,所以读写速度惊人
同时,redis还可以将内存中的数据以快照或日志的形式保存到硬盘中,以保证数据的安全性
redis典型的应用场景:缓存,排行榜,计数器,社交网络,消息队列等
spring boot整合redis
pom添加依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
</dependency>
实体类 要注意实现Serializable
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Student implements Serializable {
private long id;
private String name;
private int age;
}
注意实体类一定要实现serializable接口,否则无法放进redis里
创建redis配置
server:
port: 8080
spring:
redis:
database: 11
host: localhost
port: 6379
创建handler
@RestController
public class StudentHandler {
@Autowired
private RedisTemplate redisTemplate;
@PostMapping("/set")
public void set(@RequestBody Student student){
redisTemplate.opsForValue().set("student", student);
}
}
注意几个注解
- 只使用@RestController ,会无法返回jsp页面
- 如果需要返回页面则要使用@Controller配合视图解析器InternalResourceViewResolver才行
- 如果需要返回json、xml、或自定义的mediaType内容到页面,则需要在对应方法上添加@responseBody