redis

  • 支持持久化数据,不仅支持key-value类型的数据,还拥有list,set,zset,hash等数据结构的存储。
  • 可以进行master-slave模式的数据备份
  • 更多redis相关文档请查看 redis官方文档

redis和spring boot

redis在spring boot项目开发中是常用的缓存套件,常见使用的是spring-boot-starter-data-redis

spring boot集成redis

初始化spring boot项目之后,引入redis依赖


  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-data-redis</artifactId>
  4. </dependency>

redis使用

生命redis静态变量主要是为了将redis注入到spring容器当中

  1. @Component
  2. public class redisUtils {
  3. @Resource
  4. private RedisTemplate<String, String> redisTemplate;
  5. public static RedisTemplate redis;
  6. @PostConstruct
  7. public void redisUtils(){
  8. redis = this.redisTemplate;
  9. }
  10. }

redis在spring boot中存取数据

set写入数据

通过set方法将需要存的数据存入到redis当中,set方法接受参数(key, value);


  1. public String saveUser() {
  2. redisUtils.redis.opsForValue().set("name","zhangsan1");
  3. String str = new String("保存成功");
  4. return str;
  5. }

get读取数据

使用redis读取数据,通过get方法,参数是键名,当读取的键名不存在时,返回相关信息


  1. public String getUser() {
  2. Object object = redisUtils.redis.opsForValue().get("name");
  3. if(object != null){
  4. return object.toString();
  5. }else{
  6. return "数据不存在";
  7. }
  8. }

模拟接口请求读取redis中的数据

这里我们编写两个接口save和read,模拟接口请求的方式,从接口去读取redis缓存的数据

  1. @RequestMapping("/save")
  2. public String save(){
  3. UserService userService = new UserService();
  4. String res = userService.saveUser();
  5. return res;
  6. }
  7. @RequestMapping("/read")
  8. public String read(){
  9. UserService userService = new UserService();
  10. String res = userService.getUser();
  11. return res;
  12. }

总结

  1. 在上面的例子,编写userService模块对redis的数据进行存和取
  2. 通过controller控制器对service层处理后的redis数据进行处理返回

redis在存取值得时候,需要注意redis的数据类型。

以上就是spring boot集成redis的基础实例,redis数据删除,以及复杂类型操作,包括其他较为深入的功能请查看

更多redis相关文档请查看 redis官方文档

项目源码地址:

https://gitee.com/lewyon/spring-note

文章博客地址:spring boot集成redis基础入门

项目源码包含了swagger,后续更新关于spring boot集成swagger基础实例

欢迎关注公众号:程序员布欧,不定期更新技术入门文章

创作不易,转载请注明出处和作者。

spring boot集成redis基础入门的更多相关文章

  1. Spring Boot 2.X(六):Spring Boot 集成Redis

    Redis 简介 什么是 Redis Redis 是目前使用的非常广泛的免费开源内存数据库,是一个高性能的 key-value 数据库. Redis 与其他 key-value 缓存(如 Memcac ...

  2. (35)Spring Boot集成Redis实现缓存机制【从零开始学Spring Boot】

    [本文章是否对你有用以及是否有好的建议,请留言] 本文章牵涉到的技术点比较多:Spring Data JPA.Redis.Spring MVC,Spirng Cache,所以在看这篇文章的时候,需要对 ...

  3. SpringBoot(十一): Spring Boot集成Redis

    1.在 pom.xml 中配置相关的 jar 依赖: <!-- 加载 spring boot redis 包 --> <dependency> <groupId>o ...

  4. 【spring boot】【redis】spring boot 集成redis的发布订阅机制

    一.简单介绍 1.redis的发布订阅功能,很简单. 消息发布者和消息订阅者互相不认得,也不关心对方有谁. 消息发布者,将消息发送给频道(channel). 然后是由 频道(channel)将消息发送 ...

  5. spring boot集成redis实现session共享

    1.pom文件依赖 <!--spring boot 与redis应用基本环境配置 --> <dependency> <groupId>org.springframe ...

  6. spring boot 集成 redis lettuce

    一.简介 spring boot框架中已经集成了redis,在1.x.x的版本时默认使用的jedis客户端,现在是2.x.x版本默认使用的lettuce客户端,两种客户端的区别如下 # Jedis和L ...

  7. Spring Boot集成Redis实现缓存机制【从零开始学Spring Boot】

    转自:https://blog.csdn.net/linxingliang/article/details/52263763 spring boot 自学笔记(三) Redis集成—RedisTemp ...

  8. spring boot 集成 redis lettuce(jedis)

    spring boot框架中已经集成了redis,在1.x.x的版本时默认使用的jedis客户端,现在是2.x.x版本默认使用的lettuce客户端 引入依赖 <!-- spring boot ...

  9. Spring boot集成Redis实现sessions共享时,sessions过期时间问题分析

    Springboot鼓励零配置的方式,帮你做好大部分重复劳动的事,好到不能再好:具体的Redis安装方法和Springboot集成Redis方法,可以去搜索相关文章或参考该文章http://www.c ...

随机推荐

  1. 西文字符与中文GBK编码的区别

    一般来讲二者读取的时候西文字符的数值是正,而中文字符的数值是负的,此时读取的是中文字符的前一半,需要再读取一个char类型的数据,在大多数运行环境下这个规则都是用. ps:转自算法竞赛的笔记,要注意在 ...

  2. SSH远程登录:两台或多台服务器之间免密登录设置

    有两台(或多台)同局域网的服务器A:192.168.2.21,B:192.168.2.25.让A,B这两台服务器之间能两两互相免密登录,并且每台服务器都可以自我免密登录(自我免密登录即:ssh loc ...

  3. Nginx listen、server_name、location的配置

    # Nginx静态资源的配置指令 # listen指令 # 语法 listen address[:port][default_server] # 如: listen 127.0.0.1:8000: # ...

  4. cache2go-源码阅读

    简介 cache2go 是非常简短的 go 开源项目了,很适合作为第一个读源码项目. 如果你有一定的 go 开发经验,读起来会感觉到比较容易. 如果你刚刚接触 go 语音,基础知识还不完全了解,希望阅 ...

  5. 手把手教你定位线上MySQL锁超时问题,包教包会

    昨晚我正在床上睡得着着的,突然来了一条短信. 什么?线上的订单无法取消! 我赶紧登录线上系统,查看业务日志. 发现有MySQL锁超时的错误日志. 不用想,肯定有另一个事务正在修改这条订单,持有这条订单 ...

  6. Docker 13 Dockerfile

    参考源 https://www.bilibili.com/video/BV1og4y1q7M4?spm_id_from=333.999.0.0 https://www.bilibili.com/vid ...

  7. bash脚本里的-h是什么意思?

    问题描述 我在看脚本的时候,看到了下面代码 其中的-h "$PRG"我一时没明白是在判断什么东西.然后翻阅了一下菜鸟教程和其他教程,都没有说. 问题解决 -h其实是在判断这个文件是 ...

  8. vscode 插件 Cnblogs Client For VSCode

    目录 简介 主要功能 登录 / 授权 将本地 markdown 文件发布到博客园 博客园博文列表 将本地文件关联到博客园博文 拉取远程博文内容更新本地文件 图片上传 博文分类管理 导出 pdf 博文设 ...

  9. 【java】学习路径39-Buffered缓冲输出流

    import java.io.BufferedOutputStream; import java.io.FileOutputStream; import java.io.IOException; pu ...

  10. 永久解决IDEA 连接 mysql时区问题`

    永久解决IDEA 连接 mysql时区问题` 找到mysql的安装路径下的my.ini文件 加入以下代码 [mysqld] default-time_zone='+8:00' 关闭然后保存 打开然后以 ...