Spring boot 整合redis集群

一、环境搭建

Redis集群环境搭建:https://blog.csdn.net/qq497811258/article/details/108124697

二、创建Spring boot项目

1.创建boot项目

2.创建配置文件
spring:redis:database: 0 # Redis数据库索引(默认为0)timeout: 100000 # 连接超时时间(毫秒)#    jedis:#      pool:#        max-active: 8 # 连接池最大连接数(使用负值表示没有限制)#        max-idle: 8 # 连接池中的最大空闲连接#        max-wait: -1 # 连接池最大阻塞等待时间(使用负值表示没有限制)#        min-idle: 0 # 连接池中的最小空闲连接cluster:nodes:- 10.1.194.193:6379- 10.1.194.193:6380- 10.1.194.193:6381- 10.1.194.193:6382- 10.1.194.193:6383- 10.1.194.193:6384connectionTimeout: 6000soTimeout: 6000maxAttempts: 5# password:

3.初始化RedisTemplate
package com.lagou.demo.config;import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.PropertyAccessor;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration;
import org.springframework.cache.annotation.CachingConfigurerSupport;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;@Configuration
@AutoConfigureAfter(RedisAutoConfiguration.class)
public class RedisConfig extends CachingConfigurerSupport {@Beanpublic RedisTemplate<String,Object> redisTemplate(LettuceConnectionFactory factory){RedisTemplate<String,Object> template=new RedisTemplate<>();template.setConnectionFactory(factory);Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);ObjectMapper objectMapper = new ObjectMapper();objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);objectMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);jackson2JsonRedisSerializer.setObjectMapper(objectMapper);StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();//key采用String的序列化方式template.setKeySerializer(stringRedisSerializer);//value采用jackson序列化方式template.setValueSerializer(jackson2JsonRedisSerializer);//hash的key采用String的序列化方式template.setHashKeySerializer(stringRedisSerializer);//hash的value采用String的序列化方式template.setHashValueSerializer(jackson2JsonRedisSerializer);template.afterPropertiesSet();return template;}}
4.编写测试代码

我这边使用了2种方式调用

package com.lagou.demo;import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.test.context.junit4.SpringRunner;
import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster;
import redis.clients.jedis.JedisPoolConfig;import java.util.HashSet;
import java.util.Set;@SpringBootTest
@RunWith(SpringRunner.class)
class DemoApplicationTests {@Autowiredprivate RedisTemplate redisTemplate;@Testvoid get() {redisTemplate.opsForValue().set("sex","nan");System.out.println(redisTemplate.opsForValue().get("name"));System.out.println("------------------------------------------------------");JedisCluster jcd = null;try {JedisPoolConfig config = new JedisPoolConfig();Set<HostAndPort> jedisClusterNode = new HashSet<>();jedisClusterNode.add(new HostAndPort("10.1.194.193", 6379));jedisClusterNode.add(new HostAndPort("10.1.194.193", 6380));jedisClusterNode.add(new HostAndPort("10.1.194.193", 6381));jedisClusterNode.add(new HostAndPort("10.1.194.193", 6382));jedisClusterNode.add(new HostAndPort("10.1.194.193", 6383));jedisClusterNode.add(new HostAndPort("10.1.194.193", 6384));jedisClusterNode.add(new HostAndPort("10.1.194.193", 6385));jedisClusterNode.add(new HostAndPort("10.1.194.193", 6386));jcd = new JedisCluster(jedisClusterNode, config);//jcd.set("name", "zhang3");String value = jcd.get("sex");System.out.println("get val from redis cluster: " + value);} finally {if (jcd != null){jcd.close();}}}}
5.验证


[由零开始]Spring boot 整合redis集群相关推荐

  1. 超完整!Springboot整合redis集群(Sentine),spring boot自动配置集成redis集群(Sentine)

    1.添加maven依赖 注意maven版本依赖,版本要相互匹配,如不知道如何查看相对应的版本时,可进入博主主页查看博主上一篇博文. <parent><groupId>org.s ...

  2. Spring Boot基础学习笔记08:Spring Boot整合Redis

    文章目录 零.学习目标 1.熟悉Redis相关概念 2.掌握使用Spring Boot整合Redis 一.Redis概述 1.Redis简介 2.Redis优点 (1)存取速度快 (2)数据类型丰富 ...

  3. 猿创征文 | 微服务 Spring Boot 整合Redis 实战开发解决高并发数据缓存

    文章目录 一.什么是 缓存? ⛅为什么用缓存? ⚡如何使用缓存 二.实现一个商家缓存 ⌛环境搭建 ♨️核心源码 ✅测试接口 三.采用 微服务 Spring Boot 注解开启缓存 ✂️@CacheEn ...

  4. Spring boot - 整合 Redis缓存(上)

    一.配置Pom文件 在使用spring boot 2.0整合redis时遇到了好多问题,网上很多例子都是1.x版本的.故2.0没有折腾好所以将2.0降到了1.5.降级后由于thymeleaf版本也会从 ...

  5. 十一、Spring Boot整合Redis(一)

    Spring Boot整合Redis    1. SpringBoot+单例Redis 1)引入依赖 <dependency>     <groupId>org.springf ...

  6. Spring boot整合Redis(入门教程)

    目录 源码分析 jedis VS lettuce 整合测试 导入依赖 配置连接 测试 存入字符串 存入对象 五大数据类型操作 自定义RedisConfig 存入对象 Redis工具类(常用API) 以 ...

  7. 大聪明教你学Java | Spring Boot 整合 Redis 实现访问量统计

    前言 之前开发系统的时候客户提到了一个需求:需要统计某些页面的访问量,记得当时还纠结了一阵子,不知道怎么去实现这个功能,后来还是在大佬的带领下借助 Redis 实现了这个功能.今天又回想起了这件事,正 ...

  8. Spring Boot 整合Redis 包含Java操作Redis哨兵 作者:哇塞大嘴好帥(哇塞大嘴好帅)

    Spring Boot 整合Redis 包含Java操作Redis哨兵 作者:哇塞大嘴好帥(哇塞大嘴好帅) 1. 配置环境 在SpringBoot2.0版本以后,原来使用的jedis被替换成为了let ...

  9. Spring boot整合Redis实现发布订阅(超详细)

    Redis发布订阅 基础知识 相关命令 订阅者/等待接收消息 发布者/发送消息 订阅者/成功接收消息 常用命令汇总 原理 Spring boot整合redis 导入依赖 Redis配置 消息封装类(M ...

最新文章

  1. C#趣味程序---个位数为6,且能被3整出的五位数
  2. 嵌入式软件开发的特点、设计流程、嵌入式软件的结构
  3. 第一次CM--CosH.2
  4. Acwing第 28 场周赛【完结】
  5. 衔接上一学期:排球积分规则
  6. linux e32,linux PXE无人值守安装出现 PXE-E32:TFTP OPen timeout的解
  7. cefsharp 发送请求服务器_超高性能管线式HTTP请求(实践·原理·实现)
  8. qt自定义窗口添加父窗口后,显示不出来
  9. 画质评测|一次关于视频画质的探(zhǎn)讨(xiàn)
  10. c语言if语句教学设计,c语言if语句教学设计.pdf
  11. 利用hashmap的java_利用Java如何实现对HashMap的集合使用
  12. 文本聚类 java_【Java】文本聚类
  13. Flutter String 常用方法
  14. android 极光推送测试,Android 极光推送基本步骤
  15. mysql如何找回误删除数据_mysql如何找回误删除数据
  16. c++读写json,JsonCpp配置
  17. 谈谈web打印快递单及经验
  18. 360 android root权限获取,android手机怎么root权限获取
  19. 【示波器专题】数字示波器的主要指标——带宽
  20. iperf测试交换机流量

热门文章

  1. CSDN (中国软件开发联盟)泄密的两名嫌疑人已被刑事---白天工程师晚上做黑客
  2. 也说9158手机视频
  3. 一个工具类实现钉钉群头像效果
  4. PLDroidShortVideo
  5. Global Average Pooling、Global Max Pooling
  6. 张高兴的 UWP 开发笔记:定制 ContentDialog 样式
  7. 达梦数据库运维监控之DEM
  8. 学习笔记 | 条件概率、联合概率、全概率公式、贝叶斯公式
  9. 【巨人的肩膀】MySQL面试总结(一)
  10. 计算机备课组学期工作计划,学校计算机教研组工作计划