【项目实践】公寓租赁项目(七):SpringBoot与Redis整合的快速入门使用(1)

MCGS触摸屏数据记录与U盘导出配置全解析 在工业自动化现场,数据记录是设备运行状态分析与故障追溯的基础。HMI触摸屏作为人机交互核心,不仅承担实时监控任务,还负责过程数据的存储与导出。理解数据采集周期、存盘机制与存储介质的匹配原理,能帮助工程师高效配置数据记录功能。合理运用定时存盘、存盘组与U盘导出,可支撑设备趋势分析、报表生成及事故排查。本文以MCGS触摸屏为例,详解数据记录的完整组态流程,并汇总常见配置陷阱与排查思路,为现场调试与长期运维提供可落地的技术参考。 阅读详情

一、Redis概述

1.Redis定义:

Redis,全称为(Remote Dictionary Server),是一个基于内存的键值对存储系统,常用作缓存服务。

2.Redis特点:

①高性能:Redis主要将数据存储在内存中,因此读写速度非常快,适合对速度有较高要求的场景。

②支持多种数据结构:Redis中键值对的值(Value)支持多种数据结构,如字符串、哈希表、列表、集合等,这使得它可以应用于多种不同的场景。

③持久化:Redis可以通过定期快照或者实时记录写操作日志的方式将内存中的数据持久化到硬盘,确保数据在重启后不会丢失。

④灵活的数据过期策略:可以为每个键设置过期时间,一旦过期,Redis会自动删除。

3.Redis应用场景

最常见的应用场景就是用作于缓存,可以提升访问的速度,降低数据库的压力。比如说储存用户的登录信息,就可以存储到redis中,这样就可以降低浏览器本地存储的压力,提升访问速度。


二、Redis客户端

启动客户端:

redis-cli -h 127.0.0.1 -p 6376

  • -h <hostname> 用于声明Redis服务器的主机名或者ip地址,默认值为127.0.0.1。
  • -p <port> 用于声明Redis服务器监听的端口号,默认值为6379。

测试连接状态:

若连接成功则返回pong。

[root@server01 ~]# redis-cli ping
PONG

三、Redis常用数据类型和命令

1.通用命令

1.1 查看所有键

语法:keys pattern

说明:pattern用于匹配key,其中*表示任意个任意字符,?表示一个任意字符。

127.0.0.1:6379> keys *
 1) "s4"
 2) "s3"
 3) "key4"


1.2 查看键的总数

语法:dbsize


1.3 判断键是否存在

如果key存在返回1,不存在则返回0。

语法:exists key


1.4 删除键

可以同时删除多个键,返回值为删除键的个数,若删除一个不存在的键,则返回0。

语法:del key [key ...]


1.5 查询键的剩余过期时间

ttl的含义为time to live,用于查询一个定时键的剩余时间,返回值以秒为单位。若查询的键为设置过期时间,则返回-1,若查询的键不存在,则返回-2.

语法:ttl key


1.6 数据库管理命令

切换数据库:Redis默认有编号为0~15的16个逻辑数据库,每个数据库之间的数据是相互独立的,所有连接默认使用的都是0号数据库。

语法:select index


2. 常见的类型

2.1 string类型

概述:Redis中的string类型保存的是字节序列(Sequence of bytes),因此任意类型的数据,只要经过序列化之后都可以保存到Redis的string类型中,包括文本、数字甚至是一个对象。

常用命令
set

set命令用于添加string类型的键值对。

语法:set key value [NX | XX] [EX seconds|PX milliseconds]

各选项含义如下

  • NX:仅在key不存在时set

  • XX:仅在key存在时set

  • EX seconds:设置过期时间,单位为秒

  • PX milliseconds:设置过期时间,单位为毫秒


get

get命令用于获取某个string类型的键对应的值。

语法:GET key


incr

incr命令用于对数值做自增操作。

语法:INCR key

若key对应的value是整数,则返回自增后的结果,若不是整数则报错,若key不存在则创建并返回1。


decr

decr命令用于对数值做自减操作。

语法:DECR key

若key对应的value是整数,则返回自减后的结果,若不是整数则报错,若key不存在则创建并返回-1。


应用场景:

string类型常用于缓存、计数器等场景。


2.2 list类型

概述:list类型可用于存储多个string类型的元素,并且所有元素按照被添加的顺序存储。

常用命令
添加元素:

①lpush

该命令用于向list左侧添加元素。

语法:lpush key element [element ...]

示例:lpush li a b c

②rpush

该命令用于向list右侧添加元素。

语法:rpush key element [element ...]

③linsert

该命令用于向list指定位置添加元素。

语法:linsert key before|after pivot element

示例:linsert l1 after b new


查询元素:
①lindex

index从左到右为正值,依次是0,1,2...,从右到左为负值依次是-1,-2,-3...

语法:lindex key index

②lrange

语法:lrange key start stop

获取全部元素示例:lrange l1 0 -1


删除元素

① lpop

该命令用于移除并返回list左侧元素,count参数表示移除元素的个数。

语法:lpop key [count]

② rpop

该命令用于移除并返回list右侧的元素。

语法:rpop key [count]

③ lrem

该命令用于移除list中的指定元素。

语法:lrem key count element

说明:count参数表示要移除element元素的个数(list中可以存在多个相同的元素),count的用法如下

  • 若count>0,则从左到右删除最多count个element元素

  • 若count<0,则从右到左删除最多count(的绝对值)个element元素

  • 若count=0,则删除所有的element元素


修改元素
lset

命令可用于修改指定索引位置的元素。

语法:lset key index element


其他
llen

用于查看list长度。

语法:llen key


应用场景
  • 社交应用中,可使用list缓存每个用户发布的最新的N条记录。

  • list可用作异步消息队列。

标准高斯过程回归(Gaussian Processes Regression, GPR)从零开始,公式推导 标准高斯过程回归从零开始公式推导 阅读详情

相关推荐

从零搭建基于OpenSpec的现代化UI自动化测试框架实战指南

UI自动化测试是软件质量保障的关键环节,其核心在于通过脚本模拟用户操作,对Web应用界面进行功能验证。其原理在于利用浏览器驱动工具(如Selenium、Playwright)提供的API,实现对页面元素的定位、交互与断言。一个设计良好的自动化框架能显著提升测试脚本的可维护性、可读性和执行稳定性,从而在持续集成、回归测试等场景中发挥巨大价值。本文聚焦于如何构建一个现代化的UI测试框架,通过整合OpenSpec架构规范、Pytest测试引擎与Playwright浏览器自动化工具,形成清晰的页面对象模型(POM)

weixin_28836989的博客 285

【项目实践】公寓租赁项目(九):SpringBoot与Redis整合的快速入门使用

本文介绍了Spring Boot集成Redis的配置和使用方法。首先导入spring-boot-starter-data-redis依赖,然后在application.yml中配置Redis连接参数。重点讲解了RedisTemplate的使用方法及其操作不同数据类型的API,同时指出了RedisTemplate默认使用JDK序列化导致命令行客户端乱码的问题。最后推荐使用StringRedisTemplate替代RedisTemplate,因其采用与Redis命令行相同的序列化方式,可有效解决乱码问题,并通过

BeingACoder的博客 667

R语言实战:5分钟搞定GEO单细胞数据(scRNA-seq)下载与整理(附完整代码)

本文详细介绍了如何使用R语言快速下载和整理GEO单细胞数据(scRNA-seq),提供完整的自动化处理代码。从环境准备、数据获取到文件整理和质量检查,涵盖10X Genomics标准格式及非标准数据的处理技巧,帮助生物信息学研究者高效完成数据预处理工作。

weixin_29054399的博客 600

【项目实践】公寓租赁项目(八):SpringBoot与Redis整合的快速入门使用(2)

Redis集合类型操作指南摘要 本文介绍了Redis中三种核心集合类型: 1.无序集合(set):支持添加(sadd)、查询(smembers)、移除(srem)等操作,适用于去重场景和集合运算(交集sinter/并集sunion/差集sdiff),可用于共同好友统计和抽奖系统。 2.哈希表(hash):类似HashMap,支持键值对操作(hset/hget/hdel),适合缓存对象数据,提供字段管理功能(hkeys/hvals/hgetall)。 3.有序集合(zset):在set基础上增加分数排序功能,

BeingACoder的博客 991

CESM笔记——CESM1.0-CESM1.2.2-CESM2.1.3三个版本模式工作流对比

最近测试了CESM1.0,CESM1.2.2和CESM2.1.3三个版本,不同版本在workflow上有一些区别,来做点笔记。 CESM1.0 测试compset:B_2000,F_2000 workflow: 1. create_newcase -case ~/CESM/cesm1_0/script/B_2000 -compset B_2000 -res f19_g16 -mach tianhe 2. cd B_2000 (optional) env_mach_pes.xml ##修改核数,

砍柴姑娘Jourosy的博客 4941

五子棋AI实战:极大极小搜索、Alpha-Beta剪枝与禁手实现

博弈树搜索是双人零和博弈AI的经典决策框架,其核心思想是假设对手最优应对,通过递归遍历走法空间寻找最优解。极大极小搜索配合Alpha-Beta剪枝,能在不影响决策结果的前提下将搜索量降至平方根级别,大幅提升搜索效率。在五子棋场景中,还需处理黑棋禁手规则,包括双三、双四和长连判定,并将其融入搜索框架。评估函数基于棋型识别对局面打分,走法排序和迭代加深进一步优化剪枝效果。这些技术共同构成了一个可运行的五子棋AI,适用于棋类AI入门与博弈搜索实践。

weixin_29054399的博客 125

04-公寓租赁项目-开发准备篇

MyBatis-Plus(简称 MP)是一个MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑强大的 CRUD 操作:内置通用 Mapper、通用 Service,提供了大量的通用的CRUD方法,因此可以省去大量手写sql的语句的工作。条件构造器:提供了强大的条件构造器,可以构造各种复杂的查询条件,以应对各种复杂查询。内置分页插件。

梦想也许遥不可及,但重要的是追梦的过程,用博客记录自己的成长,记录自己一步一步向上攀登的印记 993

诠视MR眼镜Unity开发设置_Unity2020.3.38

请按照如下设置Android SDK 和 Gradle。打包前先将Unity切换到Android模式。Preferences 设置。

m0_71932574的博客 599

[尚庭公寓]01-项目概述

尚庭公寓是一个公寓租赁平台项目,包含移动端和后台管理系统其中移动端面向广大用户,提供找房、看房预约、租约管理等功能,后台管理系统面向管理员,提供公寓(房源)管理、租赁管理、用户管理等功能。下面分别介绍两端的具体业务功能移动端的线上体验地址为: http://39.99.159.121:8002其主要业务功能如下图所示各功能模块具体内容如下房源检索用户可以使用这个功能来搜索和检索符合其需求的房源。他们可以根据不同的条件,如地理位置、租金范围、支付方式等,快速找到适合的房源。看房预约管理。

. 2573

Pointnet++环境配置+复现

深度学习点云经典网络Pointnet++

weixin_58663121的博客 8075

QT+OSG/osgEarth编译之七十六:gltf+Qt编译(一套代码、一套框架,跨平台编译,版本:osgEarth-3.3插件库osgdb_gltf)

通过一套gltf代码和框架,实现osgdb_gltf跨平台编译。 在Qt环境下,集成头文件、库文件,构建跨平台编译的pro文件。 通过构建的一套配置工程,基于Qt Creator IDE,完成跨平台的编译实践。 在Windows、Linux、MacOS等操作系统上进行测试,成功编译,形成的成果(头文件、库文件等)可在不同系统下调用或使用,从而更好地构建跨平台解决方案。 采用的是osgEarth3.3版本。 读者可参考博客中的集成原理,构建不同版本的osgdb_gltf跨平台包。

LuckyHanMo的博客 1799

尚庭公寓--1.项目概述

本项目的技术架构如下图所示。项目采用前后端分离的模式,下面介绍各模块用到的技术。前端- 框架:VUE3后端- 框架:Spring Boot- 数据库访问:MyBatis、MyBatis Plus> MyBatis-Plus(简称 MP)是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。- **数据存储**- 关系型数据库:MySQL- 缓存:Redis- 对象存储:MinIO对象存储。

weixin_61500949的博客 1037

新鲜出炉,ECCV2024.9.25 首次提出基于 YOLO 目标检测的无源域自适应

本文提出了首次使用YOLO系列单发探测器的SFDA方法。本文方法采用了一个带有学习的、目标领域特定的增强和一种新的通信机制的师生框架来稳定训练,减少了对模型选择中带注释的目标数据的依赖,这对现实世界的应用至关重要。SF-YOLO 优于所有基于Faster R-CNN的SFDA方法,甚至一些使用源数据的基于UDA yolo的方法。

m0_63294504的博客 2675

【SpringBoot + Vue 尚庭公寓实战】项目介绍(一)

【尚庭公寓SpringBoot + Vue 项目实战】项目介绍(一)1、项目业务概述2、移动端介绍3、 后台管理系统4、 核心业务流程5、项目技术概述5、数据库设计尚庭公寓是一个公寓租赁平台项目,包含移动端和后台管理系统,其中移动端面向广大用户,提供找房、看房预约、租约管理等功能,后台管理系统面向管理员,提供公寓(房源)管理、租赁管理、用户管理等功能。下面分别介绍两端的具体业务功能。各功能模块具体内容如下房源检索用户可以使用这个功能来搜索和检索符合其需求的房源。

小林的博客 6540

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

尚庭公寓项目分析

尚庭公寓是一个公寓租赁平台项目,包含移动端和后台管理系统,旨在为用户提供便捷的找房、看房、预约和租赁管理体验,同时为公寓管理员提供高效的房源和租约管理工具。项目采用前后端分离架构,前端使用Vue3框架,后端基于Spring Boot框架,数据库选用MySQL,并引入Redis缓存和MinIO对象存储技术。项目难点包括前后端协同开发、数据库设计与优化、缓存一致性维护、对象存储集成、租赁业务流程的复杂性、用户需求的多样性、用户体验设计以及多模块开发的协调与管理。通过合理的技术选型和项目管理,项目旨在实现高效、可

2301_77011032的博客 1102

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

【项目实践】公寓租赁项目(十一):基于SpringBoot开发移动端登录管理接口

本文介绍了基于Spring Boot和阿里云短信服务实现的登录系统接口开发。系统包含三个主要接口:1) 获取短信验证码接口,通过阿里云短信服务发送验证码并存入Redis;2) 登录接口,验证短信验证码并返回JWT令牌,支持自动注册新用户;3) 获取用户信息接口,通过JWT解析用户身份后返回用户基本信息。系统采用Redis存储验证码并实现防刷机制,验证码有效期为300秒,60秒内不允许重复获取。开发过程中需要配置阿里云短信服务的AccessKey和模板参数,并集成Redis作为缓存服务。该系统实现了完整的短信

BeingACoder的博客 1037

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

【SpringBoot + Vue 尚庭公寓实战总结】项目介绍(一)

本项目的技术架构如下图所示。项目采用前后端分离的模式,下面介绍各模块用到的技术。前端框架:VUE3后端框架:Spring Boot数据库访问:MyBatis、MyBatis PlusMyBatis-Plus(简称 MP)是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。数据存储关系型数据库:MySQL缓存:Redis对象存储:MinIO对象存储。

c55555556的博客 2122

尚庭公寓管理系统项目面试

header:头部,通常包含算法类型(如HS256)payload:载荷,包含用户信息及声明(claims)signature:签名,用于校验数据完整性一致:说明token没有被篡改,签名合法不一致:token被篡改,校验失败,拒绝访问JWT校验的关键在于用服务端的密钥对header和payload重新签名,和传入的签名比较只要密钥不泄露,且签名匹配,证明数据完整且可信JWT本身不存储状态,校验只依赖签名和声明登录之后获取用户信息。

m0_62925761的博客 2367

尚庭公寓租赁项目day03

MyBatis-Plus(简称 MP)是一个MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑强大的 CRUD 操作:内置通用 Mapper、通用 Service,提供了大量的通用的CRUD方法,因此可以省去大量手写sql的语句的工作。条件构造器:提供了强大的条件构造器,可以构造各种复杂的查询条件,以应对各种复杂查询。内置分页插件。

m0_72625929的博客 855

公寓租赁平台项目-SpringBoot +vue+小程序

本项目是一个公寓租赁平台系统,采用Vue3+SpringBoot+MyBatis技术栈开发。系统分为用户端和管理端,用户可浏览房源、注册登录、预约看房,进行房租缴纳、报修等生活服务;管理员可管理用户、房源和租赁信息。项目包含完整的社区互动功能,适合作为编程入门学习案例。技术要点包括Vue3前端框架、SpringBoot后端、MyBatisPlus数据库操作等,提供完整的运行环境和管理员测试账号。

wanglindda的博客 429

【尚庭公寓 | day01】项目介绍+数据库设计

基于SSM+SpringBoot用户端广大用户找房、看房预约、租约管理后台管理系统管理员公寓管理、租赁管理、用户管理所需知识Java基础Java WebMySQLMaven。

serendipity_hky的博客 1700

尚庭公寓-前置内容

本项目的技术架构如下图所示。项目采用前后端分离的模式,下面介绍各模块用到的技术。前端框架:VUE3后端框架:Spring Boot数据库访问:MyBatis、MyBatis PlusMyBatis-Plus(简称 MP)是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。数据存储关系型数据库:MySQL缓存:Redis对象存储:MinIO对象存储。

readmancynn的博客 1311

朋居客房屋租赁平台

移动端的主要业务功能如下图:房源检索用户可以使用这个功能来搜索和检索符合其需求的房源。他们可以根据不同的条件,如地理位置、租金范围、支付方式等,快速找到适合的房源。看房预约管理用户可以通过这个功能预约看房。他们可以选择合适的时间,预约在特定的公寓进行实地看房,以便更好地了解房源的情况和环境。租约管理这个功能允许用户查看和管理他们的租约信息。他们可以在移动端查看租约合同,以及提交租约终止或延长的请求。房源浏览历史用户可以在这里查看他们曾经浏览过的房源历史记录。

m0_73784337的博客 929

基于 SpringBoot 的青年公寓服务系统(租赁・预约・投诉・博客)设计与实现(源码+文档+运行视频+讲解视频)

本文介绍了一个基于SpringBoot+Vue的青年公寓服务系统,旨在解决青年租房过程中的信息分散、预约不便、投诉处理不透明等问题。系统采用前后端分离架构,后端使用SpringBoot整合MyBatisPlus、Redis等技术,实现多角色权限管理和业务流程处理;前端Vue3构建响应式界面,支持PC/H5/小程序多端访问。系统提供房源管理、在线签约、VR看房、社区互动等功能模块,对接支付宝、电子签章等第三方服务,并通过测试验证了系统稳定性。文章包含技术架构详解、功能演示、测试用例及核心代码片段,为开发类似系

专注Java技术领域和毕业设计项目实战、Java、微信小程序、安卓等技术开发,远程调试部署、代码讲解、文档指导、ppt制作等技术指导。 920

【项目实践】公寓租赁项目(十):基于SpringBoot登录管理接口开发

本文介绍了后台管理系统登录模块的实现方案,主要包括四个接口:图形验证码获取、用户登录、JWT生成与解析、用户信息获取。系统使用EasyCaptcha生成验证码并存入Redis,采用JWT进行身份验证,通过ThreadLocal存储用户信息避免重复解析token。关键实现包括验证码校验、密码加密比对、Token生成与拦截器处理等安全机制,并通过自定义Mapper查询用户数据。该方案实现了完整的登录鉴权流程,确保了系统的安全性和性能优化。

BeingACoder的博客 1054

尚庭公寓房屋租赁系统day01

属性管理页面包含公寓和房间各种可选的属性信息,其中包括房间的可选支付方式房间的可选租期房间的配套公寓的配套等等。其所需接口如下房间支付方式管理页面如下所需接口如下查询全部支付方式列表保存或更新支付方式根据ID删除支付方式房间租期管理页面如下所需接口如下查询全部租期列表保存或更新租期根据ID删除租期标签管理页面如下所需接口如下保存或更新标签查询标签列表根据ID删除标签配套管理页面如下所需接口如下保存或更新配套查询配套列表根据ID删除配套房间基本属性管理页面如下所需接口如下。

m0_72625929的博客 1608
上一篇: 【项目实践】公寓租赁项目(六):基于SpringBoot预约看房接口和租约管理接口开发
下一篇: 【项目实践】公寓租赁项目(八):SpringBoot与Redis整合的快速入门使用(2)
BeingACoder
博客等级 码龄1年 106粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值