广告
返回顶部
首页 > 资讯 > 精选 >SpringBoot集成Redis的过程介绍
  • 841
分享到

SpringBoot集成Redis的过程介绍

2023-06-15 07:06:23 841人浏览 独家记忆
摘要

本篇文章和大家了解一下SpringBoot集成Redis的过程介绍。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。Redis 介绍: Redis 服务Redis (REmote Dictionary Server) 是一个

本篇文章和大家了解一下SpringBoot集成Redis的过程介绍。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

Redis 介绍: Redis 服务

Redis (REmote Dictionary Server) 是一个由Salvatore Sanfilippo 完成的key-value存储系统,是跨平台的非关系型数据库

Redis 是一个开源的使用ANSI C语言编写、遵循BSD 协议的、支持网络、可基于内存、分布式、可选择持久性的键值对存储数据库,并提供多语言的api

Redis 通常被认为是数据结构服务器,其值可以是字符串、哈希、列表、集合以及有序集合。

Redis 优点

异常快,每秒可以执行大约110000次写(set)操作

每秒可执行大约81000次读(get)操作

支持丰富的数据结构

操作具有原子性, 所有Redis 操作都是原子操作,这确保了两个客户端并发访问,Redis 服务器能接收更新的值。

多使用工具缓存消息队列(Redis 本地支持发布/订阅),应用程序中的任何短期数据。

Redis 安装

下载地址:

https://GitHub.com/MSOpenTech/redis/releases

Redis 支持32位和64 位,下载完成后,解压后,文件夹下面包含许多子文件,打开cmd 窗口,将其切换到redis 目录下,输入命名:

D:\sdk\Redis-x64-5.0.9  redis-server.exe  redis.windows.conf

Redis是什么

Redis是现在最受欢迎的NoSQL数据库之一,Redis是一个使用ANSI C编写的开源、包含多种数据结构、支持网络、基于内存、可选持久性的键值对存储数据库,其具备如下特性:

  • 基于内存运行,性能高效

  • 支持分布式,理论上可以无限扩展

  • key-value存储系统

  • 开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API

相比于其他数据库类型,Redis具备的特点是:

  • C/S通讯模型

  • 单进程单线程模型

  • 丰富的数据类型

  • 操作具有原子性

  • 持久化

  • 高并发读写

  • 支持lua脚本

如果想使用redis 启动更加容易的话,可以使用 将redis 安装路径加入到环境变量中,直接点击 redis-server.exe 即可启动redis 服务。

springBoot 集成Redis 过程

在pom.xml 中配置相关依赖 jar

<dependency>  <groupId>org.springframework.boot</groupId>  <artifactId>spring-boot-starter-data-redis</artifactId></dependency>

在SpringBoot 中配置核心文件

在application.properties 文件下添加配置redis 信息

# 配置redisspring.redis.host:localhostspring.redis.passWord=spring.redis.port=6379

Redis 配置类及其使用

Redis 配置类

// RedisConfig redisconfig 配置@Configurationpublic class RedisConfig {        @Bean    public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {        // 创建对象        RedisTemplate<String, Object> template = new RedisTemplate<>();        Jackson2JSONRedisSerializer valueRedisSerializer = new Jackson2jsonRedisSerializer(Object.class);        //设置Redis的value为json格式,并存储对象信息的序列化类型        ObjectMapper objectMapper = new ObjectMapper();        objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);        objectMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);        valueRedisSerializer.setObjectMapper(objectMapper);        // 创建一个keyRedisSerializer        RedisSerializer keyRedisSerializer = new StringRedisSerializer();        // 设置信息        template.seTKEySerializer(keyRedisSerializer);        template.setValueSerializer(valueRedisSerializer);        template.setHashKeySerializer(keyRedisSerializer);        template.setHashValueSerializer(valueRedisSerializer);        template.setConnectionFactory(factory);        template.afterPropertiesSet();        return template;    }    // redisUtils()  方法    @Bean    public RedisUtils redisUtils(@Autowired RedisTemplate redisTemplate) {        return new RedisUtils(redisTemplate);    }}

Redis 工具类, 首先redis 的增删改查等操作,针对多种数据类型的数据

// RedisUtils@Slf4jpublic class RedisUtils {    // 初始化变量    private static Logger logger = LoggerFactory.getLogger(RedisUtils.class);    private static RedisTemplate redisTemplate;    public RedisUtils(RedisTemplate redisTemplate) {        this.redisTemplate = redisTemplate;    }    // =============================common============================        public Boolean hasKey(String key) {        try {            return redisTemplate.hasKey(key);        } catch (Exception e) {            logger.error("判断key是否存在异常: {}", e);            return false;        }    }        public Object get(String key) {        return key == null ? null : redisTemplate.opsForValue().get(key);    }        public boolean del(String ... key){        if(key!=null&&key.length>0){                redisTemplate.delete(key[0]);                return true;            }else{                redisTemplate.delete(CollectionUtils.arrayToList(key));                return true;            }        }        return false;    }    // SET JIHE    public Set getKeys(){       return redisTemplate.keys("*");    }        public Boolean set(String key, Object value) {        try {            redisTemplate.opsForValue().set(key, value);            return true;        } catch (Exception e) {            logger.error("set异常: {}", e);            return false;        }    }}

配置完备之后,自动配置RedisTemplate ,需要操作redis 的类中注入redisTeplate,如下所示:

// 使用RedisTemplate                                                                                @Autowiredprivate RedisTemplate<String, String> redisTemplate;@Autowired private RedisTemplate<Object, Object> redisTemplate;

以上就是SpringBoot集成Redis的过程介绍的简略介绍,当然详细使用上面的不同还得要大家自己使用过才领会。如果想了解更多,欢迎关注编程网精选频道哦!

--结束END--

本文标题: SpringBoot集成Redis的过程介绍

本文链接: https://www.lsjlt.com/news/278817.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • SpringBoot集成Redis的过程介绍
    本篇文章和大家了解一下SpringBoot集成Redis的过程介绍。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。Redis 介绍: Redis 服务Redis (REmote Dictionary Server) 是一个...
    99+
    2023-06-15
  • SpringBoot 集成Redis 过程
    Redis 介绍: Redis 服务 Redis (REmote Dictionary Server) 是一个由Salvatore Sanfilippo 完成的key-value存储...
    99+
    2022-11-12
  • Springboot集成Camunda使用Mysql介绍
    目录一、匹配版本二、相关配置总结一、匹配版本 基于Camunda 7.16.0 + Springboot 2.5.8 首先我们去官网找到camunda7.16对应的springboo...
    99+
    2022-11-12
  • SpringBoot集成RabbitMQ和概念介绍
    目录一、RabbitMQ介绍二、相关概念三、简单使用1.配置pom包2.配置文件3.队列配置4.发送者5.接收者6.测试四、高级使用1.Topic Exchange2.Fanout ...
    99+
    2022-11-13
  • SpringBoot集成使用Redis及搭建过程
    目录SpringBoot集成使用redis搭建1.导入jar包2.配置连接redis3.添加配置类RedisConfig4.注入RedisTemplate5.测试和使用使用实例:Sp...
    99+
    2022-11-13
  • SpringBoot集成Redis流程详解
    目录第一步,导入jar包第二步,编写配置类第三步,编写util类第四步,配置yml第一步,导入jar包 <!--Redis--> <depende...
    99+
    2023-05-19
    SpringBoot集成Redis SpringBoot Redis
  • Redis中的Cluster集群介绍
    这篇文章主要介绍“Redis中的Cluster集群介绍”,在日常操作中,相信很多人在Redis中的Cluster集群介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Redi...
    99+
    2022-10-18
  • Springboot/Springcloud项目集成redis进行存取的过程解析
    目录一、redis去官网https://redis.io/download下载后解压二、在项目中添加redis依赖三、redis的使用四、字符串类型存取(k,v)五、存取对象(k,o...
    99+
    2022-11-12
  • php安装redis扩展过程介绍
    目录一、下载扩展包二、解压安装包三、 编译四、配置五、make编译六、安装位置七、查询php配置文件位置八、添加redis扩展九、是否安装成功一、下载扩展包 命令  cd /us...
    99+
    2022-11-12
  • springboot集成KoTime的配置过程
    目录koTime功能可视化展示koTime是一个springboot项目性能分析工具,通过追踪方法调用链路以及对应的运行时长快速定位性能瓶颈。 在pom.xml文件中引入 <d...
    99+
    2022-11-13
  • springmvc集成使用redis过程
    目录Redis安装spring集成redisSpringMVC中使用redis写进和读取redisRedis安装 首先安装redis。这个就不重点介绍了。windos下载redis就...
    99+
    2022-11-12
  • Redis集群中的节点介绍
    这期内容当中的小编将会给大家带来有关Redis集群中的节点介绍,以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Redis 集群中的节点分为主节点(master)和从节点(slave),其...
    99+
    2022-10-18
  • Kubernetes集群的组成介绍
    Kubernetes集群的组成 我们谈起 Kubernetes 和应用部署时,往往会涉及到容器、节点、Pods 等概念,还有各种术语,令人眼花缭乱。为了更好地摸清 Kubernete...
    99+
    2022-11-13
  • SpringBoot集成ActiveMQ的实战全过程
    目录前言JMS规范ActiveMQ介绍Spring Boot集成ActiveMQ创建项目并引入依赖配置文件队列模式实例订阅模式实例同时支持两种形式其他事项参考文章: 总结前言 在项目...
    99+
    2022-11-12
  • PostgreSQL生成列实现过程介绍
    目录示例Stored vs Virtual限制说明PostgreSQL中生成列是从其他列计算而来的特殊列。生成列与普通列不同,不是固定的值,而是又引用表中其他列的表达式决定的。生成列在SQL标准(ISO/IEC 9075...
    99+
    2023-01-12
    PostgreSQL生成列 PostgreSQL生成的列
  • redis有序集合命令的介绍
    本篇文章给大家分享的是有关redis有序集合命令的介绍,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Redis 有序集合和集合一样也是stri...
    99+
    2022-10-18
  • Flask数据库集成的介绍
    目录1、使用Flask-SQLAlchemy管理数据库1.1 配置Flask_SQLAlchemy1.2 定义数据库模型1.3 创建数据库和表1.4 数据库操作1.4.1 Creat...
    99+
    2022-11-12
  • SpringBoot集成redis的示例分析
    这篇文章给大家分享的是有关SpringBoot集成redis的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。如何使用springBoot集成redis 定义REmote ...
    99+
    2022-10-18
  • 使用springBoot集成redis的案例
    小编给大家分享一下使用springBoot集成redis的案例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!springboot...
    99+
    2022-10-18
  • SpringBoot集成Redis的思路详解
    目录SpringBoot集成Redis1、概述2、测试Redis3、自定义redisTemplateSpringBoot集成Redis 1、概述 Redis是什么? Redis(...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作