ssm整合redis

2023-11-12

1.配置文件:redis.properties

redis.host=127.0.0.1
redis.port=6379
redis.password=""
redis.maxIdle=50
redis.maxTotal=100
redis.maxWaitMillis=1000
redis.blockWhenExhausted=true
redis.testOnBorrow=true
redis.timeout=10000
defaultCacheExpireTime=60

2.applicationContext.xml:其中包含spring,mybatis,redis的配置
** <context:property-placeholder location=“classpath:db.properties,classpath:redis.properties”/>**
整个项目只能有这样一个文件引入配置生效,文件中出现两个会报Could not resolve placeholder的异常


 <!-- redis配置   非集群式-->
<!-- 导入spring-redis配置文件  -->
  
    <!-- redis数据源  -->
    <bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig">
        <!-- 最大空闲数 -->
        <property name="maxIdle" value="${redis.maxIdle}" />
        <!-- 最大连接数 -->
        <property name="maxTotal" value="${redis.maxTotal}" />
        <!-- 最大等待时间 -->
        <property name="maxWaitMillis" value="${redis.maxWaitMillis}"/>
        <!-- 连接超时时是否阻塞,false时报异常,true阻塞到直到超时,默认true -->
        <property name="blockWhenExhausted" value="${redis.blockWhenExhausted}"/>
        <!-- 返回连接时,检测连接是否成功 -->
        <property name="testOnBorrow" value="${redis.testOnBorrow}"/>
    </bean>
    <!-- Spring整合Jedis -->
    <bean  id="jedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">
        <!-- 指定连接地址 -->
        <property name="hostName" value="127.0.0.1"/>
        <!-- 指定端口号 -->
        <property name="port" value="6379"/>
        <!-- 自定义连接池的配置 -->
        <property name="poolConfig" ref="poolConfig"/>
    </bean>
 
    <!-- RedisTempLate -->
    <bean class="org.springframework.data.redis.core.RedisTemplate">
        <property name="connectionFactory" ref="jedisConnectionFactory"/>
    </bean>

3.实际应用:
1.list类型的添加,取出

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class RedisTest {
@Autowired
private RedisTemplate template;
@Test
public void TestList() {
	List<String>list1=new ArrayList<String>();
	list1.add("aaa");
	list1.add("bbb");
	list1.add("ccc");
	list1.add("ddd");
	template.opsForList().leftPush("list1", list1);
	System.out.println(template.opsForList().rightPop("list1"));
	
}

2.判断key是否存在:

template.hasKey(key)//:判断大的类型;
template.opsForHash().hasKey(key, hashKey)
//key等同于上面的那个key,hashKey代表key里面记录代表的key;
//如:template.opsForHash().put("member", po.getMno(), po);member相当于一个表,po.getMno()
//相当于表里面的每条记录的主键,po代表整条纪录.

3.使用场景:
1.string:保证二进制安全,可以存任何数据

2.list:可以用来消息队列,template.opsForList().rightPopAndLeftPush(sourceKey, destinationKey):将sourceKey里面的最后一个元素添加到destinationKey的最前面;

3.set:
(1)可以用来实现随机抽奖: template.opsForSet().randomMembers(key, count);抽取key中的count个元素,count可不写,默认为1;
(2)判断用户,或某个信息是否存在template.opsForSet().isMember(key, 元素值);

4.zset:排行版和任务执行优先级;

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

ssm整合redis 的相关文章

  • Zipkin进行链路跟踪

    Zipkin 简介 Zipkin 是 Twitter 开源的分布式跟踪系统 基于 Dapper 的论文设计而来 它的主要功能是收集系统的时序数据 从而追踪微服务架构的系统延时等问题 Zipkin 还提供了一个非常友好的界面 便于我们分析追踪
  • please remember me(auto login)

    记住我 用户自动登录的实现 auto login 一 什么是用户自动登录 对于我们的网站向已注册用户提供某些专门的服务 比如网上购物 在线下载 收费浏览等等 就会要求用户在使用这些服务之前进入登录页面 输入用户名和密码 并进行验证 如果用户
  • SpringCloud 微服务架构

    目前微服务架构还是比较火的 但是 为什么会选择springcloud 作为 微服务架构呢 列如 dubbo Motan 等等技术都是比较多的 但是依然springcloud 占据了很大一部分 值得深思 目录 一 选型依据 二 目前微服务架构
  • MyBatis快速入门(一) 搭建环境和单表映射

    MyBatis简介 一说起对象关系映射框架 大家第一时间想到的肯定是Hibernate Hibernate作为一个著名的框架 功能十分强大 我们只需要配置好实体类和数据表之间的关系 Hibernate就会自动帮我们完成生成并执行SQL语句
  • 使用mybatis+spring整合,完成DAO及Service的整合,并完成对图书表的怎删改查操作

    SQL语句如下 CREATE TABLE tb book bookNo int NOT NULL AUTO INCREMENT name varchar 20 CHARACTER SET utf8 COLLATE utf8 bin NOT
  • layui的分页实例详解

    原 layui的分页实例详解 2018年09月20日 17 43 07 李什么泽 阅读数 11571 更多 分类专栏 layui分页 版权声明 本文为博主原创文章 遵循 CC 4 0 BY SA 版权协议 转载请附上原文出处链接和本声明 本
  • AVFoundation 框架小结

    AVFoundation 小结 概述 AVFoundation 是 Objective C 中创建及编辑视听媒体文件的几个框架之一 其提供了检查 创建 编辑或重新编码媒体文件的接口 也使得从设备获取的视频实时数据可操纵 但是 通常情况 简单
  • 在struts1.1框架下,利用smartupload实现文件的上传(可以是多个文件)

    1 前端页面upload jsp 后台处理程序UplodAction java 2 struts config的配置参数如下 没有设置 ActionForm
  • 架构师--IT策略灵魂的创造者

    http blog csdn net aspop archive 2006 01 21 585823 aspx 在比尔 盖茨的众多称谓中 据说他更偏爱 首席软件架构师 同样 在网易创始人丁磊名字前 也有 首席架构师 这样的称谓 对于企业来说
  • mybatis之foreach用法

    在做mybatis的mapper xml文件的时候 我们时常用到这样的情况 动态生成sql语句的查询条件 这个时候我们就可以用mybatis的foreach了 foreach元素的属性主要有item index collection ope
  • 如何在spring框架中解决多数据源的问题

    在我们的项目中遇到这样一个问题 我们的项目需要连接多个数据库 而且不同的客户在每次访问中根据需要会去访问不同的数据库 我们以往在 spring 和 hibernate 框架中总是配置一个数据源 因而 sessionFactory 的 dat
  • 写需求分析必须牢记的5大要点

    需求验证的5大要点 要做好需求验证 必须在思想 方法 语言 人员 内容5个要点上做好相应的工作 否则就会产生很多负面的影响 1 思想 前面已经说过 由于Review被翻译成 评审 导致很多人将其与中国人常说的评审相混淆 其实它们之间是有区别
  • 多线程太可怕了

    今天发现了一个多线程引起的bug 然后进一步体会到 这东西太容易出问题了 首先要说明的是 出问题的代码可不是一般人写的 是由一个叫EPAM systems的世界知名外包公司的人写的 这些java程序员个个经验丰富 心高气傲 貌似base在乌
  • Java自动生成bean、dao、service、impl、controller(JPA初版)

    关自动生成代码我是这么想的 初步 目录 一 拿到所有表名 列名 列类型数据 C3P0连接数据库并获取所需数据 所需数据对象 测试拿到的数据 结果 二 用FreeMarker模板生成对应JPA架构Java文件 编写模板 bean ftl be
  • 一些大厂的开源平台

    百度 http fex baidu com http efe baidu com 饿了么 https fe ele me 腾讯 http www alloyteam com 美团 https tech meituan com 滴滴 http
  • Quartz框架多个trigger任务执行出现漏执行的问题分析

    一 问题描述 使用Quartz配置定时任务 配置了超过10个定时任务 这些定时任务配置的触发时间都是5分钟执行一次 实际运行时 发现总有几个定时任务不能执行到 二 示例程序 1 简单介绍 采用spring quartz整合方案实现定时任务
  • 10分钟带你了解轻量级插件框架x3py

    写在前面 由于本人目前主要从事的是Windows客户端开发方面的工作 所以本文介绍x3py的侧重点也是从客户端程序开发者方面叙述的 本文主要参考整理自x3py的官方Wiki 修正了一些官方示例中的错误 有兴趣的同学可以直接阅读原文 设计目的
  • 值得学习与推荐的c/c++框架和函数库

    这几天不上班 翻翻Evernote中记录的一些笔记 刚好有时间把记录的一些好玩链接转载一下 这篇文章里提到的很多库都用过 尤其是图像处理相关库 尤其是opencv及cximage 当时做图像算法时 很多算法就是从上面找来 然后自己修改的 比
  • mfc窗口创建的create与oncreate

    在view类中 create 是虚函数由框架调用 是用来 生成一个窗口的子窗口 oncreate 消息响应函数 是用来 表示一个窗口正在生成 某个CWnd的Create函数由当前CWnd的Owner调用 而在CWnd Create中 又会调
  • iOS自动布局——Masonry详解

    欢迎大家前往腾讯云 社区 获取更多腾讯海量技术实践干货哦 本文由鹅厂新鲜事儿发表于云 社区专栏 作者 oceanlong 腾讯 移动客户端开发工程师 前言 UI布局是整个前端体系里不可或缺的一环 代码的布局是设计语言与用户视觉感受沟通的桥梁

随机推荐

  • C语言 分割bin文件程序

    file main c author Earlybird version V1 0 0 date 30 May 2022 brief 分割bin文件为指定大小文件 attention Copyright c 2022 INESA Group
  • c++模板编程-模板类的特例化和部分特化

    类模板可以对某一个模板参数进行特化 这使得我们可以对某一个类型进行优化 你最好真是在优化 或者是针对某一个进行类型实例化后的特殊处理 全特化 如我们有以下一个简单的类模板 它提供两个公开函数 calculate计算两个T类型并返回 prin
  • JS对字符串的操作

    走进前端行业已有两年之久 对于字符串的操作也是家常便饭了 但也总在查查找找 如今对于我这个强迫症患者开始爆发了 对字符串的操作做以下整理 废话不多说直接走起来 1 字符串转换 字符串转换是最基础的要求和工作 你可以将任何类型的数据都转换为字
  • 爬虫工具之Beautiful Soup4

    Beautiful Soup4 BS4 是Python的一个第三方库 用来从HTML和XML中提取数据 安装 使用Beautiful Soup4提取HTML内容 一般要经过以下两步 1 处理源代码生成BeautifulSoup对象 这里的
  • 位运算的实践

    一 只出现一次的数字 III 1 1题目 给定一个整数数组 nums 其中恰好有两个元素只出现一次 其余所有元素均出现两次 找出只出现一次的那两个元素 你可以按 任意顺序 返回答案 进阶 你的算法应该具有线性时间复杂度 你能否仅使用常数空间
  • 深度学习实时表情识别

    背景 计算机动画代理和机器人为人机交互带来了新的维度 这使得计算机如何在日常活动中影响我们的社交生活变得至关重要 面对面的交流是一个以毫秒级的时间尺度运行的实时过程 这个时间尺度的不确定性是相当大的 这使得人类和机器有必要依赖感官丰富的感知
  • 超详细的R语言热图之complexheatmap系列(1)

    获取更多R语言和生信知识 请关注公众号 医学和生信笔记 公众号后台回复R语言 即可获得海量学习资料 目录 第一章 简介 1 1 设计理念 1 2 各章节速览 第二章 单个热图 2 1 颜色 2 2 行标题 列标题 2 3 聚类 2 3 1
  • 深度访谈:“告诉我,AI对企业到底有什么价值?”

    Eden是一家连锁经营企业的负责人 最近困扰他的是遍布全国直营和加盟店的数千名员工 如何在后疫情时代把企业的运营效率通过智能化提升一个层级 AskBot团队专注企业内部智能化 用AI去辅助人解决重复高频问题 因此才有了双方下面这一系列围绕企
  • matlab分频.m,分频器m是什么意思 音响分频器m. TW那个代表高音那个代表是低音?...

    音响分频器m TW那个代表高音那个代表是低音 T是treble 的缩写 指高音 M是mediant或middle的缩写 指中音 W是woof的缩写 指低音 音箱分频器m m 什么意思 音箱分频器m m 应该是接中音喇叭负 正两端 T T 接
  • 尚硅谷周阳老师 SpringCloud第二季学习笔记

    前言 首先感谢尚硅谷周阳老师的讲解 让我对springcloud有了很好的理解 周阳老师的讲课风格真的很喜欢 内容充实也很幽默 随口一说就是一个段子 我也算是周阳老师的忠实粉丝啦 先说说课程总体内容 以下是整理的笔记 SpringCloud
  • 带宽是什么

    带宽是什么 带宽 band width 又叫频宽 是指在固定的的时间可传输的资料数量 亦即在传输管道中可以传递数据的能力 在数字设备 中 频宽通常以bps表示 即每秒可传输之位数 在模拟设备中 频宽通常以每秒传送周期或赫兹 Hz 来表示 带
  • 超好用:免费的图床

    经常写文章的小伙伴可能会头疼 图片需要一张一张的上传 费劲也耗时 今天就推荐几款超简单的图床工具 图床就是一个在网络上存储图片的地方 目的是为了节省本地服务器空间 加快图片打开速度 话不多说 进入正题 非技术手段 1 SM MS 永久存储免
  • 根据任务需求自制数据集:Pytorch自定义数据集Dataset代码示例(有监督学习,输入输出均为图像)

    自定义数据集 一 使用torchvision io读取照片 二 使用PIL读取照片 一 使用torchvision io读取照片 import numpy as np import torch from PIL import Image i
  • eNSP 打开警告:请将eNSP相关应用程序添加到windows firewall的允许程序列表,并允许其在公用网络上运行!

    文章目录 1 警告截图 2 解决办法 1 警告截图 2 解决办法 思路 按照警告的提示信息 将 eNSP 相关应用添加到 windows firewall 防火墙 的允许程序列表 并允许其在公用网络上运行 此处以 Win 10 为例 找到对
  • yolov5训练PASCAL VOC数据集调试报错记录

    1 UserWarning torch meshgrid in an upcoming release it will be required to pass the indexing argument 解决方法 找到目录D Users J
  • h5开发网站-css实现页面的背景固定定位

    一 需求 在页面滚动时 背景图片保持不变 而不是跟随滚动 二 解决方式 使用背景固定定位 只需要在CSS中增加一个background attachment fixed 属性即可 具体代码 div class item right img
  • Merkle Patricia Tree (MPT) 以太坊merkle技术分析

    一 传统merkle树缺陷 我的这篇博客merkle tree 分析 详细解释了merkle树的原理和作用 然而传统的merkle树有他的局限性 以下对Vitalik blog原文的翻译可以很好的阐述 传统merkle树的一个特别的限制是
  • 创业公司如何提高管理能力?十条法则教你!

    1 明确的架构 接手任何一个部门的最重要的事情 是明确或者重新调整组织架构 架构的关键是 谁在什么位置 负责什么内容 一定要明确 所谓 明确 的意思是 不允许两个人交叉负责 也不允许集体领导 不允许有模糊的领域 出了问题 大家都清楚谁应该出
  • ubuntu的pycharm或程序卡主,强制关闭方法

    首先打开终端 输入 ps ef 查看正在运行的所有程序 找到想要关闭的程序如pycharm 3078和3192 输入 kill s 9 3078 kill s 9 3192 即可关闭pycharm 或者关闭别的程序
  • ssm整合redis

    1 配置文件 redis properties redis host 127 0 0 1 redis port 6379 redis password redis maxIdle 50 redis maxTotal 100 redis ma