spring redis 学习(一)

整体参考学习: 博主文章
  1. 为什么要用redis?
在日常的应用中,数据库瓶颈是最容易出现的。数据量太大和频繁的查询,由于磁盘IO性能的局限性,导致项目的性能越来越低。

这时候,基于内存的缓存框架,就能解决我们很多问题。例如Memcache,Redis等。将一些频繁使用的数据放入缓存读取,大大降低了数据库的负担。提升了系统的性能。

2.redis是什么?

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

目前阶段简单理解是基于 key-value键值对形式存储数据的内存数据库(redis基于内存的读取和写入相比传统的数据库基于磁盘IO快上数倍)。


3.初级使用,只在用的阶段

  • 配置redis数据库
  • 引入依赖包

<!-- redis -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

  • 使用类及方法

ValueOperations<String,String> valueOperations;
MicroserviceApiController(StringRedisTemplate redisTemplate){
    this.redisTemplate = redisTemplate;
    valueOperations = redisTemplate.opsForValue();
}
Map<String,Object> apiMap = new HashMap<>();

@PostMapping("/addApies")
public Result addApies(@RequestParam Map<String,Object> params){
    //this.apiMap.putAll(params);
    Set<Map.Entry<String, Object>> entries = params.entrySet();
    for (Map.Entry<String, Object> entry : entries) {
        valueOperations.set(entry.getKey(),entry.getValue().toString(),1, TimeUnit.HOURS);
    }
    return ResultGenerator.genSuccessResult();
}

@GetMapping("/getApies")
public String getApiMap(String key){
    return valueOperations.get(key);
}
 
 

调用接口或方法既可以实现数据的存储,接口中使用redis必须要设置缓存时间,否则会报错。


猜你喜欢

转载自blog.csdn.net/qq_34638435/article/details/80662304