为了账号安全,请及时绑定邮箱和手机立即绑定

Spring全家桶系列--SpringBoot入门Redis

标签:
SpringBoot

首先,Redis是什么?

Redis是一个开源的,基于内存的键值数据存储,用作数据库,缓存和消息代理。在实现方面,Key-Value存储代表NoSQL空间中最大和最老的成员之一。Redis支持数据结构,如字符串,散列,列表,集和带范围查询的有序集。


在spring data redis的框架,可以很容易地编写,通过提供一个抽象的数据存储使用Redis的键值存储的Spring应用程序。 非关系型数据库,基于内存,存取数据的速度不是关系型数据库所能比拟的 redis是键值对(key-value)的数据库

有5中主要数据类型:

  • 字符串类型 string

  • 散列类型 hash

  • 列表类型 list

  • 集合类型 set

  • 有序集合类型 zset

redis缓存为啥速度快

这么说吧,别人问你什么是“redis”,如果你知道,你可以直接吧啦吧啦一大堆,其实这个时候你的大脑就类似redis缓存,别人问的“redis”就是key,你说出来的结果就是value,而你如果不知道,你就去上网查,然后再告诉别人,这就类似于查询数据库了,你查了再告诉别人当然慢了!

你把脑袋里的东西写进笔记就类似redis持久化保存了;

你过了两个月把这玩意忘了,就是redis的定期删除了;

引自:https://blog.csdn.net/angleflyyy/article/details/81627785

准备工作

项目工具环境:

  • IDEA 2018.2

  • Gradle 4+

  • JDK1.8以上

  • redis服务器

设置Redis服务器

redis下载地址:https://redis.io/download

如果你的电脑是Mac:

brew install redis

然后运行redis服务器

cuifuandeMacBook-Pro:~ cuifuan$ redis-server25336:C 29 Nov 2018 14:53:42.490 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo25336:C 29 Nov 2018 14:53:42.490 # Redis version=5.0.2, bits=64, commit=00000000, modified=0, pid=25336, just started25336:C 29 Nov 2018 14:53:42.490 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf25336:M 29 Nov 2018 14:53:42.491 * Increased maximum number of open files to 10032 (it was originally set to 256).                _._                                                             _.-``__ ''-._                                                   _.-``    `.  `_.  ''-._           Redis 5.0.2 (00000000/0) 64 bit  .-`` .-```.  ```\/    _.,_ ''-._                                    (    '      ,       .-`  | `,    )     Running in standalone mode |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379 |    `-._   `._    /     _.-'    |     PID: 25336  `-._    `-._  `-./  _.-'    _.-'                                    |`-._`-._    `-.__.-'    _.-'_.-'|                                   |    `-._`-._        _.-'_.-'    |           http://redis.io          `-._    `-._`-.__.-'_.-'    _.-'                                    |`-._`-._    `-.__.-'    _.-'_.-'|                                   |    `-._`-._        _.-'_.-'    |                                    `-._    `-._`-.__.-'_.-'    _.-'                                         `-._    `-.__.-'    _.-'                                                 `-._        _.-'                                                         `-.__.-'                                               25336:M 29 Nov 2018 14:53:42.492 # Server initialized25336:M 29 Nov 2018 14:53:42.492 * Ready to accept connections

初始化项目

现在去Spring开始界面初始化一个项目

https://img1.sycdn.imooc.com//60731260000159d510800522.jpg

这里选择的是Gradle,选择完成点击Generate Projrct生成项目,这个时候会自动下载一个压缩包给你,解压过后导入,导入IDEA教程:http://note.youdao.com/noteshare?id=74e2d65e2d22cd684c3fdd6695b3ecdf

Gradle 依赖管理

让我们在build.gradle中为我们正在构建的示例应用程序声明必要的依赖项

buildscript {    repositories {        maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }    }    dependencies {        classpath("org.springframework.boot:spring-boot-gradle-plugin:2.1.0.RELEASE")    }}apply plugin: 'java-library'apply plugin: 'org.springframework.boot'apply plugin: 'io.spring.dependency-management'group = 'com.example'version = '0.0.1-SNAPSHOT'sourceCompatibility = 1.8repositories {    maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }}dependencies {    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'    implementation 'org.springframework.boot:spring-boot-starter-data-redis'    implementation 'org.springframework.boot:spring-boot-starter-web'    implementation 'mysql:mysql-connector-java'    implementation 'org.projectlombok:lombok'    implementation 'org.apache.commons:commons-pool2:2.4.2'    implementation 'com.alibaba:fastjson:1.2.51'    testImplementation 'org.springframework.boot:spring-boot-starter-test'}

开始使用

凭借着SpringBoot的开箱即用的特点,集成Redis也不例外

  • redisTemplate.opsForValue();//操作字符串

  • redisTemplate.opsForHash();//操作hash

  • redisTemplate.opsForList();//操作list

  • redisTemplate.opsForSet();//操作set

  • redisTemplate.opsForZSet();//操作有序set


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消