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

Java连接Redis并操作Redis中的常见数据类型

目录

一. Java连接Redis

1. 导入依赖

2. 建立连接

二. Java操作Redis的常见数据类型存储

1. Redis字符串(String)

2. Redis哈希(Hash)

3. Redis列表(List)  

4. Redis集合(Set)  


一. Java连接Redis

1. 导入依赖

pom依赖

<dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>2.9.0</version>
</dependency>

2. 建立连接

public static void main(String[] args) {
//        建立连接Jedis jedis = new Jedis("127.0.0.1", 6379);
//        设置密码jedis.auth("123456");
//        测试连接是否成功System.out.println(jedis.ping());}

运行后显示PONG则表示连接成功

二. Java操作Redis的常见数据类型存储

1. Redis字符串(String)

//        #set key          //保存jedis.set("string_name","wangwu");
//        #get key          //获取System.out.println(jedis.get("string_name"));
//        #type key         //查看类型System.out.println(jedis.type("string_name"));
//        #keys * 或keys key //查看所有或者指定的keySystem.out.println(jedis.keys("*"));
//        #SETEX KEY_NAME TIMEOUT VALUE    // 给键值对设置过期时间jedis.setex("string_zs",30,"活着");
//        #ttl key    // 获取键值对剩余的存活时间System.out.println(jedis.ttl("string_zs"));

2. Redis哈希(Hash)

//    # hset key field1 value1 [field2 value2]  #同时将多个field-value设置到哈希表key中
jedis.hset("java_user","name","zs");
jedis.hset("java_user","sex","男");
jedis.hset("java_user","age","12");//    # hget key field                          #获取指定的字段值
System.out.println(jedis.hget("java_user", "sex"));//    # hdel key field                          #删除指定的字段值
jedis.hdel("java_user","sex");//    # hgetall key                             #查询指定key的所有字段
Map<String, String> java_user_map = jedis.hgetAll("java_user");
System.out.println(java_user_map);//    # hexists key field                       #查询指定key中的字段是否存在
Boolean java_user = jedis.hexists("java_user","sex");
System.out.println(java_user);//    # hlen key                                #获取指定key中的长度
Long java_user_len = jedis.hlen("java_user");
System.out.println(java_user_len);

3. Redis列表(List)  

//        # lpush key value1 value2 value3          #将一个或多个值插入到列表头部
jedis.lpush("java_hobby", "篮球", "足球", "羽毛球");
//        # llen key                                #获取列表的长度
Long java_hobby_len = jedis.llen("java_hobby");
System.out.println(java_hobby_len);
//        # lindex key index                        #根据索引获取列表中的元素
System.out.println(jedis.lindex("java_hobby", 0));
//        # lrange key start sop                    #查看指定范围内的元素
System.out.println(jedis.lrange("java_hobby", 0, 1));

4. Redis集合(Set)  

//        # sadd key value1 [value2]                #向集合添加一个或多个元素
jedis.sadd("java_set_user","张三","李四","王五","张三丰");
//        # scard key                               #获取集合中的元素数量
System.out.println(jedis.scard("java_set_user"));
//        # exists key                              #是否存在
System.out.println(jedis.exists("java_set_user"));

相关文章:

Java连接Redis并操作Redis中的常见数据类型

目录 一. Java连接Redis 1. 导入依赖 2. 建立连接 二. Java操作Redis的常见数据类型存储 1. Redis字符串(String) 2. Redis哈希(Hash) 3. Redis列表&#xff08;List&#xff09; 4. Redis集合&#xff08;Set&#xff09; 一. Java连接Redis 1. 导入依赖 pom依赖…...

Python 基于分位数-正态分布转换的评分算法

在实验的时候遇到一个比较实际的问题&#xff0c;就是怎样对数据进行评分。比如我想根据样本的正确率进行打分&#xff0c;有两种方法&#xff0c;一种是将准确率排序&#xff0c;然后根据序号进行打分&#xff0c;这样可以排除极端数据的影响&#xff0c;但是准确率之间的差距…...

如何修改CentOS登录时默认目录

查了一下&#xff0c;有说改/etc/passwd文件的&#xff0c;有说改.bashrc文件的&#xff0c;也有说改.bash_profile&#xff0c;修改的方法都不一样。 我要改的是root登录时的目录&#xff0c;最后修改了/root/.bash_profile文件&#xff0c;只要加一行cd 路径就可以。 这个文…...

JavaFX Scene Builder Gluon 控件详解

在 JavaFX Scene Builder 工具中&#xff0c;Gluon 是一个扩展库&#xff0c;提供了一些额外的控件和功能&#xff0c;用于创建更丰富和现代化的用户界面。本文将详细介绍 Gluon 中的各个控件及其作用。 AppBar&#xff08;应用栏&#xff09; AppBar 是一个用于显示应用程序…...

Vue路由(router-link)——高亮、动态传参

一、声明式导航-导航链接 1.需求 实现导航高亮效果 如果使用a标签进行跳转的话&#xff0c;需要给当前跳转的导航加样式&#xff0c;同时要移除上一个a标签的样式&#xff0c;太麻烦&#xff01;&#xff01;&#xff01; 2.解决方案 vue-router 提供了一个全局组件 router…...

Java中将List转换为Map

在Java 8中&#xff0c;Stream API和Collectors类提供了一种方便的方式来处理集合数据。其中&#xff0c;将List转换为Map是一个常见的操作。下面我们将介绍如何使用Stream API和Collectors类将List转换为Map。 首先&#xff0c;假设我们有一个User类&#xff0c;包含id和name两…...

进程控制2——进程等待

在上一小节中我们介绍了进程的创建&#xff08;fork&#xff09;与退出&#xff08;main函数的return与exit函数&#xff09; 并且要有一个意识&#xff0c;进程退出的时候只有三种情况&#xff1a; 1.进程退出&#xff0c;结果正确 2.进程退出&#xff0c;结果不正确 3.运行异…...

k8s service

文章目录 Service 基础概念Service 类型&#xff1a;Service 的工作流程&#xff1a;东西流量&#xff0c;南北流量NodePortLoadBalancer Service 基础概念 在 Kubernetes&#xff08;K8s&#xff09;中&#xff0c;Service 是一个抽象的概念&#xff0c;表示一个应用程序的逻…...

C语言 每日一题 PTA 11.6 day12

1.调和平均 N 个正数的算数平均是这些数的和除以 N&#xff0c;它们的调和平均是它们倒数的算数平均的倒数。 本题就请你计算给定的一系列正数的调和平均值。 输入格式&#xff1a; 每个输入包含 1 个测试用例。每个测试用例第 1 行给出正整数 N(≤1000)&#xff1b;第 2 行给…...

Git使用规范指南

文章目录 Git使用规范指南前言分支命名规范分支合并流程规范提交信息规范Angular提交规范注意事项 通用Git忽略文件配置 Git使用规范指南 前言 由于最近写完代码之后&#xff0c;Git使用不规范被领导说了&#xff0c;所以最近通过阅读大量的相关博客快速学习Git使用规范&#…...

axios和Ajax

1.axios 官网&#xff1a;https://axios-http.com/zh/ CDN&#xff1a;https://cdn.bootcdn.net/ajax/libs/axios/0.21.1/axios.min.js axios是一个请求库&#xff0c;在浏览器环境中&#xff0c;它封装了XHR&#xff0c;提供更加便捷的API发送请求 基本使用 // 发送 get 请求…...

Day06

1.继承 1.1 定义 让类与类之间产生子父类关系&#xff0c;有了继承性之后&#xff0c;子类就获取到了父类中声明的所有属性和方法。 1.2 优点 继承的出现减少了代码冗余&#xff0c;提高了代码的复用性。继承的出现&#xff0c;更有利于功能的扩展。继承的出现让类与类之间…...

@Tag和@Operation标签失效问题。SpringDoc 2.2.0(OpenApi 3)和Spring Boot 3.1.1集成

问题 Tag和Operation标签失效 但是Schema标签有效 pom依赖 <!-- 接口文档--><!--引入openapi支持--><dependency><groupId>org.springdoc</groupId><artifactId>springdoc-openapi-starter-webmvc-ui</artifactId><vers…...

基础课18——智能客服系统架构

1.基础设施层 基础设施主要包括以下几点&#xff1a; 1. 硬件设施&#xff1a;包括服务器、存储设备、网络设备等&#xff0c;这是整个系统运行的物理基础。 2. 软件设施&#xff1a;包括操作系统、数据库管理系统、自然语言处理(NLP)工具和机器学习算法等&#xff0c;这些是…...

python执行cmd命令——控制电脑连接wifi——程序打包

import subprocess # 使用Popen创建进程&#xff0c;并与进程进行复杂的交互 proc subprocess.Popen(netsh wlan show network, # cmd特定的查询空间的命令stdinNone, # 标准输入 键盘stdoutsubprocess.PIPE, # -1 标准输出&#xff08;演示器、终端) 保存到管道中以便进行操作…...

Vue中nextTick的使用及原理

在Vue.js中&#xff0c;nextTick方法可以让我们在DOM更新后执行一些操作。通常情况下&#xff0c;在数据发生变化后&#xff0c;Vue.js会异步地更新DOM&#xff0c;这样可以减少不必要的DOM操作&#xff0c;提高性能。但是&#xff0c;有时候我们需要在DOM更新后对页面进行一些…...

【Linux】拓展:运维面试题,进程管理常见的7大问题

目录 一、如何判断一个程序是单线程还是多线程 二、僵尸进程是什么&#xff0c;有什么危害&#xff0c;如何解决 三、如何找回删掉的文件 四、删除文件以后&#xff0c;空间不释放 五、遇到一个病毒&#xff08;如死循环病毒&#xff09;&#xff0c;解决思路 六、机器开机…...

Android修行手册 - 一文全了解Kotlin几种静态变量、函数实现的那些事

点击跳转>Unity3D特效百例点击跳转>案例项目实战源码点击跳转>游戏脚本-辅助自动化点击跳转>Android控件全解手册点击跳转>Scratch编程案例点击跳转>软考全系列 &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff0c;以及各种资源分享&…...

Qt QTableView排序

1.简介 在开发过程中&#xff0c;我们需要通过点击表头来对QTableView或QTreeView等一系列高级视图进行排序操作&#xff0c;以下是进行排序的步骤。 步骤&#xff1a; 首先创建了一个QStandardItemModel对象或者继承QAbstractTableModel类作为数据模型&#xff0c;并设置了…...

Linux shell编程学习笔记22: () $() (()) 的用法小结

最近学习Linux Shell编程&#xff0c;对 () (()) [] [[]]等符号的用法还是有点分不太清楚&#xff0c;于是决定再梳理一下。今天先整理 () $() (()) 的用法。 1 单小括号() 1.1 子shell&#xff08;命令组&#xff09; 括号中的命令将会新开一个子shell顺序执行&#xff0c;所…...

终极Markdown转换神器:浏览器中的写作革命指南

终极Markdown转换神器&#xff1a;浏览器中的写作革命指南 【免费下载链接】markdown-here Google Chrome, Firefox, and Thunderbird extension that lets you write email in Markdown and render it before sending. 项目地址: https://gitcode.com/gh_mirrors/ma/markdow…...

5分钟搞定黑苹果音频驱动:AppleALC新手配置指南

5分钟搞定黑苹果音频驱动&#xff1a;AppleALC新手配置指南 【免费下载链接】AppleALC Native macOS HD audio for not officially supported codecs 项目地址: https://gitcode.com/gh_mirrors/ap/AppleALC AppleALC是一款强大的开源内核扩展工具&#xff0c;能让非官方…...

Android NDK开发从入门到实战:解锁应用性能的终极武器

引言 在Android应用开发领域&#xff0c;Java和Kotlin凭借其简洁的语法和强大的框架支持&#xff0c;成为了绝大多数开发者的首选。然而&#xff0c;当面对高性能计算、游戏引擎集成、硬件加速访问或核心算法保护等场景时&#xff0c;纯Java层的实现往往显得力不从心。这时&…...

3种策略实现百度网盘提取码智能解析效率提升85%

3种策略实现百度网盘提取码智能解析效率提升85% 【免费下载链接】baidupankey 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 副标题&#xff1a;分布式检索技术突破与资源获取效率革命 核心痛点&#xff1a;为何获取提取码成为数字资源流通的主要瓶颈&am…...

MySQL迁移到达梦数据库:DMP文件转换的3种方案对比(附性能测试数据)

MySQL到达梦数据库迁移实战&#xff1a;DMP文件转换方案深度评测 在国产化替代浪潮下&#xff0c;越来越多的企业开始将MySQL数据库迁移至达梦等国产数据库平台。作为国产数据库的领军者&#xff0c;达梦DM8在性能、安全性和兼容性方面表现出色&#xff0c;但迁移过程中数据类型…...

MaterialSkin 2:WinForms应用的Material Design现代化解决方案

MaterialSkin 2&#xff1a;WinForms应用的Material Design现代化解决方案 【免费下载链接】MaterialSkin 项目地址: https://gitcode.com/gh_mirrors/mat/MaterialSkin 在传统Windows Forms应用程序面临界面陈旧、用户体验落后的挑战下&#xff0c;WinForms现代化改造…...

如何快速搭建个人小说离线图书馆:fanqienovel-downloader完整使用指南

如何快速搭建个人小说离线图书馆&#xff1a;fanqienovel-downloader完整使用指南 【免费下载链接】fanqienovel-downloader 下载番茄小说 项目地址: https://gitcode.com/gh_mirrors/fa/fanqienovel-downloader 厌倦了在线小说的网络限制和广告干扰&#xff1f;想要随时…...

深度解析ConcurrentHashMap设计演进:从分段锁到无锁化的并发之路

在Java并发编程领域&#xff0c;ConcurrentHashMap绝对是“并发容器扛鼎之作”——它既解决了HashMap并发环境下的数据不一致&#xff08;死循环、数据丢失&#xff09;问题&#xff0c;又突破了Hashtable全表锁的性能瓶颈&#xff0c;成为高并发场景下K-V存储的首选。自JDK1.5…...

基于Matlab的11种图像清晰度评价指标:直接可运行,联系我

基于matlab图像清晰度评价指标。 一共11种。 程序已调通&#xff0c;可直接运行。 需要直接联系。 基于matlab图像清晰度评价指标。 一共11种。 程序已调通&#xff0c;可直接运行。 需要直接联系。 图像剃度的清晰度评价(EOG, Roberts, Tenengrad, Brenner,Variance, Laplace,…...

第一批“首席龙虾官”,月薪6万

鱼羊 发自 凹非寺量子位 | 公众号 QbitAI当你以为&#x1f99e;还是大家伙业余养养的新鲜玩具&#xff0c;已经有公司正经在招「龙虾官」了。&#xff08;doge&#xff09;随便打开一个招聘网站一搜&#xff0c;你别说&#xff0c;你还真别说&#xff0c;「OpenClaw」标签下的在…...