当前位置: 首页 > news >正文

springBoot:redis使用

需求:查询酒店房间列表

1、引入依赖

        <!--redis--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>

2、配置yml文件

server:port: 8083
spring:application:name: room-serviceredis:host: 120.27.149.6port: 6379password: redistimeout: 10000database: 0

3、实体类

注意:redis要求存入的对象必须序列化,不然会报没有序列化的错误。所以需要继承Serializable 接口序列化

package com.hmall.common.pojo;import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;import java.io.Serializable;/*** <p>* 房间表* </p>** @author itcast* @since 2023-08-25*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class Room implements Serializable {private static final long serialVersionUID = 1L;/*** 主键id*/private Long id;/*** 地址*/private String address;/*** 房型
1:酒店
2:民宿*/private Integer type;/*** 楼栋*/private String loudong;/*** 房间号*/private Integer number;/*** 床位号*/private Long bed;/*** 入住状态
1:未入住
2:入住中*/private Integer status;/*** 房间人员关系表id*/private Integer userRomId;/*** 房间价格*/private Double price;/*** 损耗状态
1:未损耗
2:有损耗*/private Integer wastageStatus;}

4、业务层使用

    @Autowiredprivate RedisTemplate redisTemplate;/*查询房间列表*/@Overridepublic List<Room> getRoomList(Integer type, Integer status) {List<Room> list = null;String keyId = "room_" + type + "_" + status;//查找redis缓存list = (List<Room>) redisTemplate.opsForValue().get(keyId);if (list != null) {return list;}LambdaQueryWrapper<Room> lwq = new LambdaQueryWrapper<>();if (status != 0) {lwq.eq(Room::getStatus, status);}if (type != 0) {lwq.eq(Room::getType, type);}list = list(lwq);System.out.println("list:" +list);//存储数据到redis,过期时间50分钟redisTemplate.opsForValue().set(keyId, list, 50, TimeUnit.MINUTES);return list;}/*新增房间*/@Overridepublic void add(Room room) {String keyId = "room_" + room.getType() + "_" + room.getStatus();//删除redis缓存redisTemplate.delete(keyId);//保存数据save(room);}

相关文章:

springBoot:redis使用

需求&#xff1a;查询酒店房间列表 1、引入依赖 <!--redis--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency> 2、配置yml文件 server:port: 80…...

cmake 选择 vs编译器

QQ:2967732156 QQ交流群&#xff1a;622684416 // 编译VS2017版本的Tars&#xff0c; Release版本 // win32 cmake .. -G "Visual Studio 15 2017" -D CMAKE_BUILD_TYPERelease // x64 cmake .. -G "Visual Studio 15 2017 Win64" -D CMAKE_BUILD_…...

项目(智慧教室)第一部分:cubemx配置,工程文件的移植,触摸屏的检测,项目bug说明

第一章&#xff1a;需求与配置 一。项目需求 二。实现外设控制 注意&#xff1a; 先配置引脚&#xff0c;再配置外设。否则会出现一些不可预料的问题 1.时钟&#xff0c;串口&#xff0c;灯&#xff0c;蜂鸣器配置 &#xff08;1&#xff09;RCC配置为外部时钟&#xff0c;修…...

Springboot集成redis--不同环境切换

1.单机配置 spring:redis:mode: singletonhost: 127.0.0.1port: 6379lettuce:pool:max-active: 8 #连接池最大阻塞等待时间&#xff08;使用负值表示没有限制max-idle: 2 #连接池中的最大空闲连接min-idle: 1 #连接池最大阻塞等待时间&#xff08;使用负值表示没有限…...

稀疏数组的实现

文章目录 目录 文章目录 前言 一 什么是稀疏数组? 二 稀疏数组怎么存储数据? 三 稀疏数组的实现 总结 前言 大家好,好久不见了,这篇博客是数据结构的第一篇文章,望大家多多支持! 一 什么是稀疏数组? 稀疏数组&#xff08;Sparse Array&#xff09;是一种数据结构&a…...

表达式语言的新趋势!了解SPEL如何改变开发方式

文章首发地址 SpEL&#xff08;Spring Expression Language&#xff09;是一种表达式语言&#xff0c;由Spring框架提供和支持。它可以在运行时对对象进行解析和计算&#xff0c;用于动态地构建和操作对象的属性、方法和表达式。以下是SpEL的一些特性和功能&#xff1a; 表达式…...

一套成熟的实验室信息管理系统(云LIS源码)ASP.NET CORE

一套成熟的实验室信息管理系统&#xff0c;集前处理、检验、报告、质控、统计分析、两癌等模块为一体的网络管理系统。它的开发和应用将加快检验科管理的统一化、网络化、标准化的进程。 LIS把检验、检疫、放免、细菌微生物及科研使用的各类分析仪器&#xff0c;通过计算机联…...

NPM使用技巧

NPM使用技巧 前言技巧全局模块位置PowerShell报错安装模块冲突 NPM介绍NPM命令使用方法基本命令模块命令查看模块运行命令镜像管理 常用模块rimrafyarn 前言 本文包含NodeJS中NPM包管理器的使用技巧&#xff0c;具体内容包含NPM介绍、NPM命令、常用模块等内容&#xff0c;还包…...

java学习一

目录 Java 与 C 的区别 Java程序是编译执行还是解释执行 编译型语言 解释型语言 Java 与 C 的区别 Java 是纯粹的面向对象语言&#xff0c;所有的对象都继承自 java.lang.Object&#xff0c;C 兼容 C &#xff0c;不但支持面向对象也支持面向过程。Java 通过虚拟机从而实现…...

PV PVC in K8s

摘要 在Kubernetes中&#xff0c;PV&#xff08;Persistent Volume&#xff09;和PVC&#xff08;Persistent Volume Claim&#xff09;是用于管理持久化存储的重要资源对象。PV表示存储的实际资源&#xff0c;而PVC表示对PV的声明性要求。当应用程序需要使用持久化存储时&…...

SAP-PP:基础概念笔记-5(物料主数据的MRP1~4视图)

文章目录 前言一、MRP1视图Base Unit of Measure&#xff08;UoM&#xff09;MRP 组采购组ABC 指示器Plant-Specific Material Status 特定的工厂物料状态MRP 类型 MRP TypeMRP 类型 MRP TypeMaster Production Scheduling(MPS) 主生产计划基于消耗的计划(CBP)再订货点Reorder-…...

【C语言】初阶测试 (带讲解)

目录 ① 选择题 1. 下列程序执行后&#xff0c;输出的结果为( ) 2. 以下程序的输出结果是&#xff1f; 3. 下面的代码段中&#xff0c;执行之后 i 和 j 的值是什么&#xff08;&#xff09; 4. 以下程序的k最终值是&#xff1a; 5. 以下程序的最终的输出结果为&#xff…...

用huggingface.Accelerate进行分布式训练

诸神缄默不语-个人CSDN博文目录 本文属于huggingface.transformers全部文档学习笔记博文的一部分。 全文链接&#xff1a;huggingface transformers包 文档学习笔记&#xff08;持续更新ing…&#xff09; 本部分网址&#xff1a;https://huggingface.co/docs/transformers/m…...

unity 物体至视图中心以及新对象创建位置

如果游戏对象不在视野中心或在视野之外&#xff0c; 一种方法是双击Hierarchy中的对象名称 另一种是选中后按F 新建物体时对象的位置不是在坐标原点&#xff0c;而是在当前屏幕的中心...

船舶稳定性和静水力计算——绘图体平面图,静水力,GZ计算(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

Python 网页爬虫的原理是怎样的?

网页爬虫是一种自动化工具&#xff0c;用于从互联网上获取和提取信息。它们被广泛用于搜索引擎、数据挖掘、市场研究等领域。 网页爬虫的工作原理可以分为以下几个步骤&#xff1a;URL调度、页面下载、页面解析和数据提取。 URL调度&#xff1a; 网页爬虫首先需要一个初始的U…...

python技术面试题合集(二)

python技术面试题 1、简述django FBV和CBV FBV是基于函数编程&#xff0c;CBV是基于类编程&#xff0c;本质上也是FBV编程&#xff0c;在Djanog中使用CBV&#xff0c;则需要继承View类&#xff0c;在路由中指定as_view函数&#xff0c;返回的还是一个函数 在DRF中的使用的就是…...

【linux命令讲解大全】089.使用tree命令快速查看目录结构的方法

文章目录 tree补充说明语法选项列表选项文件选项排序选项图形选项XML / HTML / JSON 选项杂项选项 参数实例 从零学 python tree 树状图列出目录的内容 补充说明 tree 命令以树状图列出目录的内容。 语法 tree [选项] [参数]选项 列表选项 -a&#xff1a;显示所有文件和…...

【C++】—— 单例模式详解

前言&#xff1a; 本期&#xff0c;我将要讲解的是有关C中常见的设计模式之单例模式的相关知识&#xff01;&#xff01; 目录 &#xff08;一&#xff09;设计模式的六⼤原则 &#xff08;二&#xff09;设计模式的分类 &#xff08;三&#xff09;单例模式 1、定义 2、…...

TheRouter 框架原理

TheRouter 框架入口方法 通过InnerTheRouterContentProvider 注册在AndroidManifest.xml中&#xff0c;在应用启动时初始化 <application><providerandroid:name"com.therouter.InnerTheRouterContentProvider"android:authorities"${applicationId}.…...

【超详细】前端必备:从0到1吃透JavaScript闭包,附真实项目避坑指南

文章目录第一章 从“变量生命周期”开始&#xff0c;重新理解作用域链1.1 一个让新手困惑的面试题&#xff1a;循环中的var与let1.2 作用域链的形成&#xff1a;函数定义位置决定了一切第二章 闭包的工程价值&#xff1a;从封装到模块化2.1 数据私有化&#xff1a;用闭包实现真…...

企业级母婴商城系统管理系统源码|SpringBoot+Vue+MyBatis架构+MySQL数据库【完整版】

摘要 随着互联网技术的快速发展和电子商务的普及&#xff0c;母婴用品市场呈现出蓬勃发展的态势。年轻父母对于母婴产品的需求日益多样化&#xff0c;传统的线下零售模式已无法满足其便捷、高效、个性化的购物需求。因此&#xff0c;构建一个功能完善、安全可靠的企业级母婴商城…...

intv_ai_mk11效果实测报告:在中文技术问答、创意写作、逻辑推理三维度得分分析

intv_ai_mk11效果实测报告&#xff1a;在中文技术问答、创意写作、逻辑推理三维度得分分析 1. 测试背景与模型介绍 intv_ai_mk11是一款基于Llama架构的AI对话机器人&#xff0c;拥有7B参数规模&#xff0c;专门针对中文场景优化。本次测试将从三个核心维度评估其实际表现&…...

SEO_SEO优化常见误区及正确操作指南

SEO优化常见误区 在互联网时代&#xff0c;SEO&#xff08;搜索引擎优化&#xff09;已成为网站运营中不可或缺的一部分。很多人在实际操作中却常常犯下一些常见的SEO优化误区&#xff0c;这不仅影响了网站的流量&#xff0c;也可能导致搜索引擎的惩罚。下面我们将详细分析这些…...

Go Module 依赖冲突调试方法

Go Module 依赖冲突调试方法 在Go语言开发中&#xff0c;依赖管理是一个关键环节。随着项目规模的扩大&#xff0c;依赖的第三方库越来越多&#xff0c;版本冲突问题也愈发常见。Go Module作为官方推荐的依赖管理工具&#xff0c;虽然简化了依赖管理流程&#xff0c;但在多级依…...

PyTorch 2.8镜像部署教程:RTX 4090D配置htop实时监控GPU/CPU/内存使用

PyTorch 2.8镜像部署教程&#xff1a;RTX 4090D配置htop实时监控GPU/CPU/内存使用 1. 环境准备与快速部署 在开始之前&#xff0c;请确保您的硬件配置满足以下要求&#xff1a; 显卡&#xff1a;RTX 4090D 24GB显存内存&#xff1a;120GB及以上存储&#xff1a;系统盘50GB …...

Ubuntu 22.04 改IP重启失效?别急,可能是OVS的ovsdb-server在捣鬼

Ubuntu 22.04网络配置失效&#xff1a;当OVS与netplan的隐秘博弈 在虚拟化技术大行其道的今天&#xff0c;Open vSwitch&#xff08;OVS&#xff09;作为开源虚拟交换机的标杆&#xff0c;已经成为众多云计算平台和容器网络的核心组件。然而&#xff0c;当它遇上Ubuntu 22.04默…...

终极指南:如何在NixOS上完美打包与使用SilentSDDM主题

终极指南&#xff1a;如何在NixOS上完美打包与使用SilentSDDM主题 【免费下载链接】SilentSDDM A very customizable SDDM theme that actually looks good. 项目地址: https://gitcode.com/gh_mirrors/si/SilentSDDM SilentSDDM是一款高度可定制且视觉精美的SDDM登录主…...

深入解析STM32 map文件:从编译到内存优化的关键步骤

1. 为什么STM32开发者必须掌握map文件分析 第一次接触STM32的map文件时&#xff0c;我和大多数新手一样感到一头雾水。这个由编译器自动生成的文本文件&#xff0c;乍看就像天书般难以理解。直到有次项目遇到内存不足的紧急情况&#xff0c;我才真正体会到map文件的价值——它不…...

手机号查询QQ号:技术解析与实用指南

手机号查询QQ号&#xff1a;技术解析与实用指南 【免费下载链接】phone2qq 项目地址: https://gitcode.com/gh_mirrors/ph/phone2qq 当你更换手机后忘记QQ账号&#xff0c;或需要验证手机号与QQ的绑定关系时&#xff0c;phone2qq项目提供了一种高效解决方案。这是一个基…...