Spring Boot整合Redis

在老师博客中下载压缩包

下载后,解压到D盘,在D:\Program Files目录下新建一个文件夹redis,解压到目录中。


配置环境变量

启动Redis服务器,启动命令行窗口,键入redis-server命令

启动Redis客户端
启动命令行窗口,键入redis-cli命令

键入exit命令,退出客户端



(二)安装Redis可视化管理工具
1、下载Redis可视化管理工具
下载链接:https://pan.baidu.com/s/1EaCKpkGr04QM8QHu3H-G_g
提取码:oonx

下载好后,双击它




创建Spring Boot项目RedisDemo
设置项目元数据



创建实体类
在net.lhf.lesson08包里创建bean子包
1、创建地址实体类Address
在net.lhf.lesson08.bean包里创建地址实体类Address

package net.lhf.lesson08.bean;import org.springframework.data.redis.core.index.Indexed;/*** 功能:地址实体类* 作者:李红芙* 日期:2021年07月17日*/
public class Address {@Indexedprivate String country; //国家@Indexedprivate String city; //城市public Address(String country, String city) {this.country = country;this.city = city;}public String getCountry() {return country;}public void setCountry(String country) {this.country = country;}public String getCity() {return city;}public void setCity(String city) {this.city = city;}@Overridepublic String toString() {return "Address{" +"country='" + country + '\'' +", city='" + city + '\'' +'}';}
}

创建人实体类Person
在net.lhf.lesson08.bean包里创建人实体类Family

package net.lhf.lesson08.bean;
import org.springframework.data.redis.core.index.Indexed;/*** 功能:家庭实体类* 作者:李红芙* 日期:2021年05月17日*/
public class Family {@Indexedprivate String type; //成员类型@Indexedprivate String name; //成员名public Family(String type, String name) {this.type = type;this.name = name;}public String getType() {return type;}public void setType(String type) {this.type = type;}public String getName() {return name;}public void setName(String name) {this.name = name;}@Overridepublic String toString() {return "Family{" +"type='" + type + '\'' +", name='" + name + '\'' +'}';}
}

创建人实体类Person
在net.lhf.lesson08.bean包里创建人实体类Person

package net.lhf.lesson08.bean;import org.springframework.data.annotation.Id;
import org.springframework.data.redis.core.RedisHash;
import org.springframework.data.redis.core.index.Indexed;import java.util.List;/*** 功能:人实体类* 作者:李红芙* 日期:2021年05月17日*/
@RedisHash("persons")
public class Person {@Id  //主键private String id;//生成二级索引,方便查询@Indexedprivate String firstName; //名@Indexedprivate String lastName; //姓private Address address; //家庭地址private List<Family> familyList; //家庭成员public Person(String id, String firstName, String lastName, Address address, List<Family> familyList) {this.id = id;this.firstName = firstName;this.lastName = lastName;this.address = address;this.familyList = familyList;}public String getId() {return id;}public void setId(String id) {this.id = id;}public String getFirstName() {return firstName;}public void setFirstName(String firstName) {this.firstName = firstName;}public String getLastName() {return lastName;}public void setLastName(String lastName) {this.lastName = lastName;}public Address getAddress() {return address;}public void setAddress(Address address) {this.address = address;}public List<Family> getFamilyList() {return familyList;}public void setFamilyList(List<Family> familyList) {this.familyList = familyList;}@Overridepublic String toString() {return "Person{" +"id='" + id + '\'' +", firstName='" + firstName + '\'' +", lastName='" + lastName + '\'' +", address=" + address +", familyList=" + familyList +'}';}
}

(五)创建自定义Repository接口
在net.lhf.lesson08包里创建repository子包
在net.lhf.lesson08.repository包里创建PersonRepository接口

在全局配置文件配置Redis属性

spring.redis.port=6379
spring.redis.host=127.0.0.1
spring.redis.password=

在测试类里编写测试方法
点开测试类RedisDemoApplicationTests

package net.lhf.lesson08;import net.lhf.lesson08.bean.Address;
import net.lhf.lesson08.bean.Family;
import net.lhf.lesson08.bean.Person;
import net.lhf.lesson08.repository.PersonRepository;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;import java.util.ArrayList;
import java.util.List;@SpringBootTest
class RedisDemoApplicationTests {//注入仓库@Autowiredprivate PersonRepository personRepository;@Testvoid contextLoads() {}@Testpublic void testAddPerson() {// 添加第一个人Address address = new Address("中国", "泸州");Family family1 = new Family("儿子", "张晓刚");Family family2 = new Family("女儿", "张晓霞");List<Family> familyList = new ArrayList<Family>();familyList.add(family1);familyList.add(family2);Person person = new Person("1", "无忌", "张", address, familyList);personRepository.save(person);// 添加第二个人address = new Address("中国", "上海");family1 = new Family("儿子", "李功晨");family2 = new Family("女儿", "李晓丽");familyList = new ArrayList<Family>();familyList.add(family1);familyList.add(family2);person = new Person("2", "承鹏", "李", address, familyList);personRepository.save(person);// 添加第三个人address = new Address("中国", "北京");family1 = new Family("儿子", "唐玉海");family2 = new Family("女儿", "唐雨涵");familyList = new ArrayList<Family>();familyList.add(family1);familyList.add(family2);person = new Person("3", "大明", "唐", address, familyList);personRepository.save(person);// 添加第四个人address = new Address("中国", "北京");family1 = new Family("儿子", "张大明");family2 = new Family("女儿", "张丽丽");familyList = new ArrayList<Family>();familyList.add(family1);familyList.add(family2);person = new Person("4", "文勇", "张", address, familyList);personRepository.save(person);System.out.println("成功地添加了4条记录~");}}

说明:在这个测试方法里,测试了personRepository的save()方法

运行测试方法,查看结果

在命令行窗口启动redis服务

打开Redis可视化工具查看

创建测试方法testFindAll()

运行测试方法,查看结果

测试personRespository的其它方法
创建测试方法testFindById()

运行测试方法,查看结果

创建测试方法testDeleteAll()

package net.lhf.lesson08;import net.lhf.lesson08.bean.Address;
import net.lhf.lesson08.bean.Family;
import net.lhf.lesson08.bean.Person;
import net.lhf.lesson08.repository.PersonRepository;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;import java.util.ArrayList;
import java.util.List;
import java.util.Optional;@SpringBootTest
class RedisDemoApplicationTests {//注入仓库@Autowiredprivate PersonRepository personRepository;@Testvoid contextLoads() {}@Testpublic void testAddPerson() {// 添加第一个人Address address = new Address("中国", "泸州");Family family1 = new Family("儿子", "张晓刚");Family family2 = new Family("女儿", "张晓霞");List<Family> familyList = new ArrayList<Family>();familyList.add(family1);familyList.add(family2);Person person = new Person("1", "无忌", "张", address, familyList);personRepository.save(person);// 添加第二个人address = new Address("中国", "上海");family1 = new Family("儿子", "李功晨");family2 = new Family("女儿", "李晓丽");familyList = new ArrayList<Family>();familyList.add(family1);familyList.add(family2);person = new Person("2", "承鹏", "李", address, familyList);personRepository.save(person);// 添加第三个人address = new Address("中国", "北京");family1 = new Family("儿子", "唐玉海");family2 = new Family("女儿", "唐雨涵");familyList = new ArrayList<Family>();familyList.add(family1);familyList.add(family2);person = new Person("3", "大明", "唐", address, familyList);personRepository.save(person);// 添加第四个人address = new Address("中国", "北京");family1 = new Family("儿子", "张大明");family2 = new Family("女儿", "张丽丽");familyList = new ArrayList<Family>();familyList.add(family1);familyList.add(family2);person = new Person("4", "文勇", "张", address, familyList);personRepository.save(person);System.out.println("成功地添加了4条记录~");}@Testpublic void testFindAll(){Iterable<Person> persons = personRepository.findAll();persons.forEach(person -> System.out.println(person));}@Testpublic void testFindById() {Optional<Person> person = personRepository.findById("2");System.out.println(person.get());}@Testpublic void testDeleteAll(){personRepository.deleteAll();System.out.println();}
}

2021-5-17:Spring Boot整合Redis相关推荐

  1. Spring Boot 整合Redis 包含Java操作Redis哨兵 作者:哇塞大嘴好帥(哇塞大嘴好帅)

    Spring Boot 整合Redis 包含Java操作Redis哨兵 作者:哇塞大嘴好帥(哇塞大嘴好帅) 1. 配置环境 在SpringBoot2.0版本以后,原来使用的jedis被替换成为了let ...

  2. Spring boot - 整合 Redis缓存(上)

    一.配置Pom文件 在使用spring boot 2.0整合redis时遇到了好多问题,网上很多例子都是1.x版本的.故2.0没有折腾好所以将2.0降到了1.5.降级后由于thymeleaf版本也会从 ...

  3. Spring Boot基础学习笔记08:Spring Boot整合Redis

    文章目录 零.学习目标 1.熟悉Redis相关概念 2.掌握使用Spring Boot整合Redis 一.Redis概述 1.Redis简介 2.Redis优点 (1)存取速度快 (2)数据类型丰富 ...

  4. 十一、Spring Boot整合Redis(一)

    Spring Boot整合Redis    1. SpringBoot+单例Redis 1)引入依赖 <dependency>     <groupId>org.springf ...

  5. Spring boot整合Redis(入门教程)

    目录 源码分析 jedis VS lettuce 整合测试 导入依赖 配置连接 测试 存入字符串 存入对象 五大数据类型操作 自定义RedisConfig 存入对象 Redis工具类(常用API) 以 ...

  6. 大聪明教你学Java | Spring Boot 整合 Redis 实现访问量统计

    前言 之前开发系统的时候客户提到了一个需求:需要统计某些页面的访问量,记得当时还纠结了一阵子,不知道怎么去实现这个功能,后来还是在大佬的带领下借助 Redis 实现了这个功能.今天又回想起了这件事,正 ...

  7. Spring boot整合Redis实现发布订阅(超详细)

    Redis发布订阅 基础知识 相关命令 订阅者/等待接收消息 发布者/发送消息 订阅者/成功接收消息 常用命令汇总 原理 Spring boot整合redis 导入依赖 Redis配置 消息封装类(M ...

  8. 微服务Spring Boot 整合 Redis 实现 好友关注

    文章目录 ⛅引言 一.Redis 实现好友关注 -- 关注与取消关注 二.Redis 实现好友关注 -- 共同关注功能 ⛵小结 ⛅引言 本博文参考 黑马 程序员B站 Redis课程系列 在点评项目中, ...

  9. 猿创征文 | 微服务 Spring Boot 整合Redis 实战开发解决高并发数据缓存

    文章目录 一.什么是 缓存? ⛅为什么用缓存? ⚡如何使用缓存 二.实现一个商家缓存 ⌛环境搭建 ♨️核心源码 ✅测试接口 三.采用 微服务 Spring Boot 注解开启缓存 ✂️@CacheEn ...

  10. [由零开始]Spring boot 整合redis集群

    Spring boot 整合redis集群 一.环境搭建 Redis集群环境搭建:https://blog.csdn.net/qq497811258/article/details/108124697 ...

最新文章

  1. 电脑硬件知识学习_学习计算机基础必读的4本经典入门书籍,自学编程必备书单!...
  2. java爬取网页内容 简单例子(2)——附jsoup的select用法详解
  3. Android Framework增加API 报错 Missing nullability on parameter
  4. 青蛙换位java_青蛙换位
  5. TensorFlow笔记(9) ResNet
  6. 《面向对象分析与设计》一1.4面向对象方法的主要优点
  7. 对Table_locks_immediate值的理解
  8. 动态主机配置协议DHCP
  9. 图神经网络GNN论文2019-2020顶会列表
  10. 基于XML的ASP留言板
  11. 计算机科学导论第12版答案,计算机科学导论第12章参考答案.pdf
  12. t470换屏线_thinkpad t470怎么样?thinkpad t470拆机图解全面评测
  13. 电脑重启桌面 计算机图标消失,电脑重启桌面图标不见了怎么办
  14. .NET Framework 3.5 安装错误:0x800F0906、0x800F081F、0x800F0907
  15. 考Java二级要不要背方法英文_考英语二级有什么技巧吗?
  16. 2022-2023年华南师范大学工商管理硕士(MBA)招生简章
  17. 程序员如何避免面向监狱编程?避免踩雷!
  18. BZOJ3837: [Pa2013]Filary
  19. 查看nvidia显卡GPU信息
  20. NV终于出必杀!怪兽显卡GTX TITAN首测

热门文章

  1. 微信公众号笔记(一)
  2. ROC曲线下面积的相关计算和检验
  3. matlab计算prc曲线auc面积,ROC曲线及其matlab实现ROC曲线的绘画
  4. python判断信用卡号是否合法_三十八、练习、Python判断一个信用卡号是否合理
  5. 如何找到自己正确需要的抖音搜索关键词
  6. 华三服务器bios修改兼容模式,bios怎么设置兼容模式
  7. zk的watcher机制
  8. (原创)分享一下最近搞的tiny210V2从nand启动支持(K9GAG08U0F).
  9. Google Play 开发者注意事项
  10. 2022年第五届全国青少年人工智能创新挑战赛