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 启动更加容易的话,可以使用 将redis 安装路径加入到环境变量中,直接点击 redis-server.exe 即可启动redis 服务。
SpringBoot 集成Redis 过程1. 在pom.xml 中配置相关依赖 jar
dependency groupId org.springframework.boot /groupId artifactId spring-boot-starter-data-redis /artifactId /dependency
2.在SpringBoot 中配置核心文件
在application.properties 文件下添加配置redis 信息
# 配置redis spring.redis.host:localhost spring.redis.password= spring.redis.port=6379
3. Redis 配置类及其使用
Redis 配置类
// RedisConfig redisconfig 配置 @Configuration public class RedisConfig { /** * key redis serializer: {@link StringRedisSerializer} and * key redis serializer: {@link Jackson2JsonRedisSerializer} **/ @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 的增删改查等操作,针对多种数据类型的数据
* redis工具类 * @author Jone // RedisUtils @Slf4j public class RedisUtils { // 初始化变量 private static Logger logger = LoggerFactory.getLogger(RedisUtils.class);
public RedisUtils(RedisTemplate redisTemplate) { this.redisTemplate = redisTemplate; } // =============================common============================
try { return redisTemplate.hasKey(key); } catch (Exception e) { logger.error("判断key是否存在异常: {}", e); return false; } } /** * 普通缓存获取 * * @param key 键 * @return 值 */ public Object get(String key) { return key == null null : redisTemplate.opsForValue().get(key); } /** * 删除 * @param key * @return */ 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("*"); } /** * 普通缓存放入 * * @param key 键 * @param value 值 * @return true成功 false失败 */ 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 @Autowired private RedisTemplate String, String redisTemplate; @Autowired private RedisTemplate Object, Object redisTemplate;
本篇文章到此结束,如果您有相关技术方面疑问可以联系我们技术人员远程解决,感谢大家支持本站!
我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题
本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 SpringBoot 集成Redis 过程
相关文章
- SpringBoot集成Redis的思路详解
- Redis入门教程:学习Redis的基础技能(redis教程)
- Redis安装之旅:编译安装篇(redis编译安装)
- SSM集成Redis实现高效数据共享(ssm整合redis)
- SSM框架与Redis结合,开发更快更高效(ssm redis集成)
- 通过快速集成,提升Redis使用效率(快速集成redis)
- 服务开启Redis远程调用实现互联网系统的集成(开启redis对外)
- 快速掌握Redis连接服务器查询操作(查询redis连接服务器)
- 如何查找Redis中Key的过期时间(查询redis的过期时间)
- 知梦框架为 Web 开发提供轻松集成 Redis 的新方案(知梦框架能使用redis)
- 用Redis捕捉用户行为规律(用户行为 redis)
- 深入理解Redis中的结构体存储(查看redis存储结构体)
- 如何使用TP5框架操作Redis(tp5怎么操作redis)
- 基于SSM框架实现Redis完美集成(ssm的redis配置)
- 设置Redis服务器 避免被挂起(如何防止redis挂掉)
- 注意Redis使用时需要注意的事项(发redis)
- Redis码出叙事的不可思议(rediso码多少行)
- Redis集群搭建实现无缝集成的插件(redis集群搭建插件)
- 简洁高效Redis集成服务实现异步化生产力(redis集成服务)
- Redis集成哨兵实现高可用性(redis集成哨兵)
- Redis哨兵模式展现集群强大的高可用性(redis集成哨兵模式)
- 利用Redis让项目更容易上手(redis集成到项目中)
- Redis实现分布式锁管理(redis集成分布式锁)
- Redis是否集成了Lua(redis集成了lua么)
- Redis结合Lua强力升级将性能提升到新高度(redis 集成 lua)
- Redis部署实践案例研究(redis 部署案例)
- 复制Redis跨节点复制实现数据同步的最佳实践(redis 跨节点)
- 实现Redis认证,管理何种用户(redis认证有用户吗)
- Redis实现自增全局ID的简单方法(redis 自增全局id)
- Redis查询缓慢分片实践经验分享(redis查询缓慢分片)