Cynicism Cynicism
首页
  • 前端学习笔记

    • 《Vue》笔记
    • 《TypeScript 从零实现 axios》
    • TypeScript
    • JS设计模式总结
    • 小程序笔记
  • 后端学习笔记

    • 《JavaWeb》
    • 《SSM》
    • 《瑞吉外卖》
    • 《Git》
    • 《SpringCloud》
    • 《黑马点评》
    • 《Spring原理》
    • 《JVM》
    • 《Java并发编程》
    • 《学成在线》
  • HTML
  • CSS
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 面试
  • 常见问题
  • 实用技巧
  • 友情链接
实习
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Cynicism

Java后端学习中的IKUN
首页
  • 前端学习笔记

    • 《Vue》笔记
    • 《TypeScript 从零实现 axios》
    • TypeScript
    • JS设计模式总结
    • 小程序笔记
  • 后端学习笔记

    • 《JavaWeb》
    • 《SSM》
    • 《瑞吉外卖》
    • 《Git》
    • 《SpringCloud》
    • 《黑马点评》
    • 《Spring原理》
    • 《JVM》
    • 《Java并发编程》
    • 《学成在线》
  • HTML
  • CSS
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 面试
  • 常见问题
  • 实用技巧
  • 友情链接
实习
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 知识点总结
  • Redis入门
    • 1. 数据类型
    • 2. 常用命令
    • 3. Spring Data Redis
  • 项目优化
  • Nginx
  • 《瑞吉外卖》
cynicism
2023-06-05
目录

Redis入门

Redis简介

Redis(Remote Dictionary Server),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API,属于非关系型数据库

# 1. 数据类型

  • 字符串:String(常用)
  • 哈希:hash(适合存储对象)
  • 列表:list(任务队列)
  • 集合:set
  • 有序集合:sorted set(排行榜)

# 2. 常用命令

① 字符串

  • nil 表示为空;
  • 如果key值相同的情况下,后设置的值会覆盖之前设置的值

② 哈希

③ 列表

列表元素为字符串,可以有重复元素

④ 集合

⑤ 有序集合

⑥ 通用命令

# 3. Spring Data Redis

概述

spring-data-redis是spring-data模块的一部分,专门用来支持在spring管理项目对redis的操作,使用java操作redis最常用的是使用jedis,但并不是只有jedis可以使用,像jdbc-redis jredis也都属于redis的java客户端,他们之间是无法兼容的,如果你在一个项目中使用了jedis,然后后来决定弃用掉改用jdbc-redis就比较麻烦了,spring-data-redis提供了redis的java客户端的抽象,在开发中可以忽略掉切换具体的客户端所带来的影响,而且他本身就属于spring的一部分,比起单纯的使用jedis,更加稳定.管理起来更加自动化

redis中默认有16个数据库(database),默认使用的是0号数据库,通过使用select id来改变使用的数据库

RedisTemplate对象可以通过Autowired自动注入,Springboot已经自动装配

注意:这样获取的RedisTemplate对象会对key和value值进行序列化,这样无法直接通过自定义的key获得value

解决方案:自定义RedisTemplate对象

特性

  • 自动管理连接池,提供了一个高度封装的RedisTemplate类
  • 针对jedis客户端的大量api进行了归类封装,把同一类型的操作封装成了operation接口.支持redis中的五种数据类型的操作.
  • 针对数据的"序列化与反序列化",提供了多种可以选择的策略(RedisSerializer)
    • JdkSerializationRedisserializer:当需要存储java对象时使用.
    • stringRedisSerializer:当需要存储string类型的字符串时使用.
    • JacksonJsonRedisSerializer:将对象序列化成json的格式存储在redis中,需要jackson-json工具的支持(目前我还没使用过,不了解)

关于redis在java里的操作详细查看: https://blog.csdn.net/weixin_56219549/article/details/119484442?ops_request_misc=&request_id=&biz_id=102&utm_term=springdataredis&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-119484442.nonecase&spm=1018.2226.3001.4187

编辑 (opens new window)
#springboot
上次更新: 2025/05/12, 04:51:03
知识点总结
项目优化

← 知识点总结 项目优化→

最近更新
01
JVM调优
06-03
02
Linux篇
03-30
03
Kafka篇
03-30
更多文章>
Theme by Vdoing | Copyright © 2023-2025 Cynicism | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式