• 2024-07-02保存到redis中的token乱码了
    示图:原因是缓存保存到redis需要序列化操作,没有序列化会出现这样的问题序列化redis第一步:packagecom.abliner.test.configure.redis;importcom.fasterxml.jackson.annotation.JsonAutoDetect;importcom.fasterxml.jackson.annotation.PropertyAccessor;importcom
  • 2024-06-30【Redis —— 03 SpringBoot整合Redis】
    SpringBoot整合Redis是一种常见的做法,用于提升应用的性能和可扩展性。通过将Redis作为缓存或数据存储,应用可以实现快速的数据读写和高效的资源管理。以下是一个基本的整合步骤:1.引入依赖首先,在你的pom.xml文件中添加Redis和SpringDataRedis的依赖:<!--Sprin
  • 2024-06-23Redis入门
    目录Redis简介Redis下载启动Redis服务客户端连接 Redis数据类型Redis常用命令字符串操作命令SETkeyvalue        设置指定key的值GETkey        获取指定key的值SETEXkeysecondsvalue        设置指定key的值,并将key的过期时间设
  • 2024-06-19【SpringBoot】Spring Boot 如何实现接口防刷
    目录什么是接口防刷常见的接口防刷策略Redis实现接口防刷代码示例拦截器实现接口防刷代码示例总结什么是接口防刷接口被刷指的是同一接口被频繁调用,可能是由于以下原因导致:恶意攻击:攻击者利用自动化脚本或工具对接口进行大量请求,以消耗系统资源、拖慢系统响应速
  • 2024-06-11Redis
            之前我们学习得都是SQL类型的,从这里开始我们开始设置对应的NoSQL类型的        国内的一些企业,并不是都是仅仅只使用关系型数据库,也就是SQL就可以进行相关操作的,还需要其他的类型,也就是NoSQL类型的数据库NOSQL解决方案:Redis:第一个
  • 2024-06-05Redis——Java的客户端
    Java的客户端在Redis官网中提供了各种语言的客户端,地址:https://redis.io/clientsjedisjedis的官网地址:https://github.com/redis/jedis1.引入依赖<dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>5.0
  • 2024-06-013.redis数据库
    Redis简介和使用:简介:Redis是一个基于内存的key-value结构数据库;基于内存存储,读写性能高;适合存储热点数据(热点商品、资讯、新闻);企业应用广泛;使用:启动服务端,命令提示符处于Redis的安装目录下,输入服务端的命令和Redis的配置文件;启动服务端命令:redis-server.exeredis.win
  • 2024-05-26自定义RedisTemplate,解决Redis乱码问题
    问题:使用默认的RedisTemplate来操作Redis,在其底层使用的是JDK序列化器,会导致数据乱码问题,可读性差,其优点是兼容性高。解决:自定义RedisTemplate,使用Jackson序列化器替代JDK序列化器。@ConfigurationpublicclassRedisConfig{@BeanpublicRedisTemplate<String,
  • 2024-05-21spring boot集成redis
    Redis是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sortedset--有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add
  • 2024-05-21springboot2 - lettuce
    spring操作redis,默认使用的是lettuce,介绍一下相关代码。Maven依赖<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-cache</artifactId></dependency>
  • 2024-05-18在spring boot中使用redis
    第一步,引入依赖```<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>```第二步,配置redisspring:redis:host:loc
  • 2024-05-14redis学习笔记4: 在Java中操作Redis
    redis学习笔记4:在Java中操作RedisRedis的Java客户端Jedis[命令和原生Redis基本相同]Lettuce[性能高效]SpringDateRedis[可以在Spring项目中使用,简化操作]SpringDateRedis使用方式导入maven坐标<!--https://mvnrepository.com/artifact/org.springfra
  • 2024-05-13SpringCache
    1、什么是SpringCacheSpringCache是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能。SpringCache提供了一层抽象,底层可以切换不同的缓存实现。EHCacheCaffeineRedis我们不需要主动显式要求使用什么缓存实现。比如我们要使用redis实现,只
  • 2024-05-13基于Java的redis客户端的基本使用
    1.简介Java中redis客户端有jedis、lettuce、Redission等2.jedis的基本使用引入依赖<dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>4.2.3</version></dependency>从jedis连接池获取je
  • 2024-05-11使用 Redisson 框架基于 Redis 实现分布式锁
    分布式锁可以采用数据库、zookeeper、redis三种方式实现。采用数据库实现方式,主要采用表字段的唯一索引特性。数据库是非常昂贵的资源,非常不推荐,最致命就是性能,不要去增加不必要的负担。采用zookeeper的实现方式,主要使用其为客户端创建临时有序节点的特性,在我之前的博客有介
  • 2024-04-28springboot~redis的hash结构为key设置过期策略
    redis配置文件开启键过期#The"notify-keyspace-events"takesasargumentastringthatiscomposed#ofzeroormultiplecharacters.Theemptystringmeansthatnotifications#aredisabled.##Example:toenablelistandgenericevents,fromthepo
  • 2024-04-23springboot 统计接口耗时及指定时间接口访问次数
     1.使用AOP在不改变原有方法的基础上对接口方法增强,引入依赖<!--引入AOP依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency><!--引入Redis依赖--><depen
  • 2024-04-18多RedisTemplate配置
    SpringBoot自2.0版本开始默认使用Lettuce作为Redis的客户端,多RedisTemplate配置方法如下:先对lettuce连接池配置,基于lettuce配置多数据源的连接工厂,使用@Primary标注为首选的bean,以及指定并名称,再基于连接工厂配置多数据源的redisTemplate。点击查看代码packagecom.hnltd.a
  • 2024-04-08SpringBoot拦截器注入stringredistemplate出现Consider defining a bean of type 'org.springframework.data.
    问题自定义拦截器需要注入StringRedisTemplate来通过token获取redis中的数据自定义拦截器代码@ComponentpublicclassLoginInterceptorimplementsHandlerInterceptor{@AutowiredprivateStringRedisTemplatestringRedisTemplate;@Overridepublicb
  • 2024-04-07redis开发规约
    key设计1、可读性和可管理性#业务名:表名:idgetpersoninfo:person:12、简洁性减少key长度,建议不超过39字节例子humanresource:employee:88301->hr:emp_883013、特色字符key不要包含特殊字符(空格,换行,引号),建议使用英文与数字不同类型的应用场景 序列化JdkS
  • 2024-04-01【NoSQL】SpringBoot+Redis简单使用
    【NoSQL】SpringBoot+Redis简单使用Redis是一款key-value存储结构的内存级NoSQL数据库;支持多种数据存储格式、支持持久化、支持集群windows下载:https://github.com/tporadowski/redis/releases<dependency><groupId>org.springframework.boot</groupId><artifactId
  • 2024-04-01【Redis】快速入门 数据类型 常用指令 在Java中操作Redis
    文章目录一、简介二、特点三、下载与安装四、使用4.1服务器启动4.2客户端连接命令4.3修改Redis配置文件4.4客户端图形化界面五、数据类型5.1五种常用数据类型介绍5.2各种数据类型特点六、常用命令6.1字符串操作命令6.2哈希操作命令6.3列表操作命令6.4集合操
  • 2024-03-29美团一面:项目中使用过Redis吗?我说用Redis做缓存。他对我哦了一声
    引言Redis,作为一种开源的、基于内存且支持持久化的键值存储系统,以其卓越的性能、丰富灵活的数据结构和高度可扩展性在全球范围内广受欢迎。Redis不仅提供了一种简单直观的方式来存储和检索数据,更因其支持数据结构如字符串、哈希、列表、集合、有序集合等多种类型,使得其在众多场景
  • 2024-03-27redis+aop实现接口防刷(幂等)
    幂等和接口防刷概念这两者其实是属于不同的场景但是在一些情况下,实现方式上有异曲同工之妙。防刷顾名思义,想让某个接口某个人在某段时间内只能请求N次。一般是对一些不发人员用脚本对接口进行大量请求,或者说利用脚本进行秒杀。幂等幂等的数学概念幂等是源于一种数学概念
  • 2024-03-18限流 SDK 的设计与实现
    需求分析请设计一套SDK,用于实现接口限流,针对某个IP对于特定接口方法的单位时间访问次数进行控制。限流算法:滑动窗口可配置项时间窗口限流次数实现思路算法知识补充通过滑动窗口实现限流思想源于计数器(单位时间内数量超过阈值时拒绝请求),但是引入了滑动窗口,相较于