springboot集成

2023-10-29

maven配置

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-pool2</artifactId>
    <version>2.11.1</version>
</dependency>

 application.yaml配置

spring:
  application:
    name: daisy-web-test
  redis:
    host: 127.0.0.1
    port: 6379
    password: 123456
    lettuce:
      pool:
        max-active: 10
        max-idle: 10
        min-idle: 1
        time-between-eviction-runs: 10s
        enabled: true
    sentinel:
      master: mymaster
      password: 123456
      nodes: 192.168.2.168:26379,192.168.2.168:26380,192.168.2.168:26381

RedisConfig配置



import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.StringRedisSerializer;

@Configuration
public class RedisConfig {

    @Bean
    public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
        //大多数情况,都是选用<String, Object>
        RedisTemplate<String, Object> template = new RedisTemplate<>();
        template.setConnectionFactory(redisConnectionFactory);

        StringRedisSerializer serializer = new StringRedisSerializer();
        template.setKeySerializer(serializer);
        template.setHashKeySerializer(serializer);
        return template;
    }


}

cotroller测试


import cn.hutool.core.lang.UUID;
import com.daisy.web.test.util.redis.CacheUtilManager;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import cn.hutool.core.lang.UUID;
import com.daisy.web.test.util.redis.CacheUtilManager;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.concurrent.TimeUnit;

@RestController
@RequestMapping("/redis")
@Log4j2
public class RedisController {

	@Autowired
	private RedisTemplate redisTemplate;

	/**
	 * http://127.0.0.1:8888/redis/set
	 * @return
	 */
	@RequestMapping("/set")
	public String user() {
		try {
			for (int i = 0; i < Integer.MAX_VALUE; i++) {
				TimeUnit.SECONDS.sleep(2);
				String key="name";

				Object o = redisTemplate.opsForValue().get(key);
				System.out.println("old value : "+o);
				String value= java.util.UUID.randomUUID().toString();
				redisTemplate.opsForValue().set(key, value);
				Object o2 = redisTemplate.opsForValue().get(key);
				System.out.println("new value : "+o2);
			}
			return UUID.randomUUID().toString();
		} catch (Exception e) {
			e.printStackTrace();
			return "error";
		}
	}

}

启动项目访问

测试地址 http://127.0.0.1:8888/redis/set

查看日志

 异常测试

停掉集群中的master节点,观察日志,发现报错,然后从节点变为主节点后又连接成功,可以继续使用

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

springboot集成 的相关文章

随机推荐

  • 2分钟学会Python绘制蟒蛇!

    目录 一 Python蟒蛇绘制 问题分析 1 1 Python蟒蛇绘制 二 Python蟒蛇绘制 实例编写 三 运行效果 3 1 程序关键 四 Python蟒蛇绘制 举一反三 4 1 Python语法元素理解 4 2 程序参数的改变 4 3
  • 吐槽大会,来瞧瞧资深老前端写的垃圾代码

    忍无可忍 不吐不快 本期不写技术文章 单纯来吐槽下公司项目里的奇葩代码 还都是一些资深老前端写的 希望各位对号入座 知道了什么是烂代码 才能写出好代码 别说什么代码和人有一个能跑就行的话 玩笑归玩笑 人都有菜的时候 写出垃圾代码无可厚非 但
  • 面试时,被问到频繁跳槽该如何回应?

    有数据显示 现在的职场人 跳槽越来越频繁 95后平均7个月就离职 对于面试官来说 一个跳槽过于频繁的人总是存在潜在风险 比如抗压力差 稳定性不好 心不定这山望着那山高 职业规划不清晰等等 我一直强调一个观点 职场人跳槽 应该是为了下一步有更
  • 十八、部署 Vue.js 项目到生产环境

    本章概要 构建发布版本 部署 项目开发完毕并测试后 就要准备构建发布版本 部署到生产环境 18 1 构建发布版本 在构建发布版本前 注意将项目代码中用于调试的 alert debugger console log 等语句删除或注释 在生产环
  • Linux目录读写和可执行权限

    一 进入目录权限 如果我在普通用户下创建了一个目录f1 然后使用chomd u rwx g rwx o rwx之后 我在普通用户下想进入f1目录 权限不允许 然后我切换到超级用户下 再次尝试进入到f1目录 这个时候允许进入 然后回到普通用户
  • static的作用域

    一 面向过程设计中的static 1 静态全局变量 在全局变量前 加上关键字static 该变量就被定义成为一个静态全局变量 静态全局变量有以下特点 该变量在全局数据区分配内存 未经初始化的静态全局变量会被程序自动初始化为0 自动变量的值是
  • Linux下rgmii接口,zynq7010 petalinux 2019.2 RGMII via EMIO 连接问题

    各位好 遇到一个问题 petalinux 2019 2 zynq7010 通过gmii to rgmii 连接挂外EMIO管脚上的PHY kernel启动没有识别PHY的动作 在非linux环境下测试过网络是OK的 u boot下也能够正常
  • Gcc 编译时指定宏

    gcc 编译指定宏 那在makefile里面 gcc DMACRONAME MACRODEF 或者 gcc DMACRONAME 这样就定义了预处理宏 编译的时候可选代码就会被编译进去了 举例说明 Dmacro string 等价于在头文件
  • ubuntu16.04 安装 pygraphviz

    sudo apt get install python pydot python pydot ng graphviz graphviz dev sudo pip3 install pygraphviz
  • qt自定义控件设置属性

    自定义控件设置的属性出现在ui designer控件栏 参考 https blog csdn net Mingyueruya article details 121268933 主要是靠Q PROPERTY 定义一个QString类型 名字
  • C#入门-简介

    一 入门 1 简介 1 1 C 语言介绍 C 是一种新式编程语言 不仅面向对象 还类型安全 C 是面向对象的 面向组件的编程语言 多项 C 功能有助于创建可靠且持久的应用程序 垃圾回收自动回收不可访问的未用对象所占用的内存 可以为 null
  • 中标龙芯、deepin龙芯、ubuntu证书存放路径及安装卸载说明

    中标龙芯 deepin龙芯 ubuntu证书存放路径及安装卸载说明 一 Ubuntu deepin龙芯 证书路径 etc ssl certs ca certificates crt 安装步骤 1 生成 crt后缀证书 如test crt 2
  • fiddler抓包番外————了解工具栏

    前言 作为一款功能强大的工具 Fiddler 提供了许多实用的功能和工具栏 可以帮助用户更加高效地使用它 如果您想了解 Fiddler 的工具栏及其功能 那么本篇文章就是为您准备的 在这里 我将为大家详细介绍 Fiddler 的工具栏及其各
  • ubuntu linux 教程 pdf,Ubuntu 12.04 菜鸟完全使用教程(四) PDF

    Linux公社已经在先前发布Suruibin 同学制作的 Ubuntu 12 04 菜鸟使用手册一到三系列教程 看来 Suruibin 同学是要将这套教程进行到底了 Ubuntu 12 04 菜鸟使用手册 四 已经写好了 当我们面对一件繁杂
  • 主备延迟监控

    主备延迟的模拟 文章目录 主备延迟的模拟 1 基本工具的安装 1 1 安装 percona toolkit 1 2 安装 sysbench 2 搭建延迟监控 1 基本工具的安装 1 1 安装 percona toolkit 这玩意儿工具挺全
  • Java的jar包依赖版本冲突解决

    参考 https blog csdn net weixin 38898423 article details 128178055 https blog csdn net Yal insist article details 12766998
  • Student类,包括学生姓名、性别、年龄、Java成绩。要求创建五个该类对象,输出每个学生信息,计算并输出这五个学生Java成绩的平均值, 以及计算并输出他们Ja

    一 Student类 包括学生姓名 性别 年龄 Java成绩 要求创建五个该类对象 输出每个学生信息 计算并输出这五个学生Java成绩的平均值 以及计算并输出他们Java成绩的最高分以及最低分是多少 分别是哪位同学 public class
  • 推荐使用maven shade进行打包,assembly打包会出现若干问题

    现在基本上都是采用maven来进行开发管理 我有一个需求是需要把通过maven管理的java工程打成可执行的jar包 这样也就是说必需把工程依赖的jar包也一起打包 而使用maven默认的package命令构建的jar包中只包括了工程自身的
  • c#调用c++ dll的几种类型转换

    在合作开发时 C 时常需要调用C DLL 当传递参数时时常遇到问题 尤其是传递和返回字符串是 现总结一下 分享给大家 VC 中主要字符串类型为 LPSTR LPCSTR LPCTSTR string CString LPCWSTR LPWS
  • springboot集成

    maven配置