【Redis】进阶篇--用JAVA代码操作Redis

news/2024/7/24 7:01:29 标签: java, 开发语言

🥳🥳Welcome Huihui's Code World ! !🥳🥳

接下来看看由辉辉所写的关于Redis的相关操作吧 

目录

🥳🥳Welcome Huihui's Code World ! !🥳🥳

一.Java连接Redis

1.导入pom依赖

​2.Java连接

二.Java操作Redis

1.Redis字符串(String)

2.Redis哈希(Hash)

3.列表(List)

4.集合(Set)


一.Java连接Redis

1.导入pom依赖

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

2.Java连接

在此之前需要开启redis服务

然后建一个类,写上下列代码

java">package com.zking.minoa.wh;

import redis.clients.jedis.Jedis;

/**
 * @author是辉辉啦
 */
public class Redis {
    public static void main(String[] args) {
    Jedis jedis = new Jedis("192.168.101.129", 6379);
    jedis.auth("123456");
    System.out.println(jedis.ping());
    jedis.select(1);
    }
}

二.Java操作Redis

1.Redis字符串(String)

java">package com.zking.minoa.wh;
 
import redis.clients.jedis.Jedis;

/**
 * @author是辉辉啦
 *
 */
public class Demo2 {
    public static void main(String[] args) {
        Jedis jedis = new Jedis("192.168.101.129", 6379);
        jedis.auth("123456");
 
//        存值
//        jedis.set("uname","wh);
//        取值
//        System.out.println(jedis.get("uname"));
//        设置时间
//        jedis.setex("hobby",20,"daima");
//        查看剩余时间
//        System.out.println(jedis.ttl("hobby"));
//        修改值
//        jedis.set("uname","huihui");
//        System.out.println(jedis.get("uname"));
//        删除值
//        System.out.println(jedis.del("uname"));
    }
}

2.Redis哈希(Hash)

java">package com.zking.minoa.wh;
 
import redis.clients.jedis.Jedis;

/**
 * @author是辉辉啦
 *
 */
public class Demo3 {
    public static void main(String[] args) {
        Jedis jedis = new Jedis("192.168.101.129", 6379);
        jedis.auth("123456");
//      存值
//      jedis.hset("student","sname","wh");
//      jedis.hset("student","sage","18");
//      jedis.hset("student","sex","nv");
//      取指定的字段值
//      System.out.println(jedis.hget("student", "sname"));
//      删除值
//      System.out.println(jedis.hdel("student","sage"));
//      查询指定的key的所有字段
//      System.out.println(jedis.hgetAll("student"));
//      查询指定的key是否存在
//      System.out.println(jedis.hexists("student", "sname"));
//      System.out.println(jedis.hexists("student", "sage"));
//      获取指定key的长度
        System.out.println(jedis.hlen("student"));
    }
}

工具类编写

但是在Java中操作哈希数据,会与用命令操作有所不同,它不能够一次性添加多条数据,那么我们其实可以编写一个工具类,去实现一次添加多条数据的目的

java">package com.zking.minoa.wh;

import redis.clients.jedis.Jedis;

import java.util.Map;
import java.util.Set;

/**
 * @author是辉辉啦
 * @create 2023-11-03-16:47
 */
public class RedisUtils {
    public static void setMap (Jedis jedis, String key, Map<String,String> map){
        if(map!=null&&map.size()!=0){
            Set<String> keys = map.keySet();
            for(String mykey:keys){
                jedis.hset(key, mykey, map.get(mykey));
            }
        }

    }

}

 测试

java">package com.zking.minoa.wh;
 
import redis.clients.jedis.Jedis;

import java.util.HashMap;
import java.util.Map;

/**
 * @author是辉辉啦
 *
 */
public class Demo3 {
    public static void main(String[] args) {
        Jedis jedis = new Jedis("localhost", 6379);
        jedis.auth("123456");

        jedis.hset("person","name","huihui");
        Map map = new HashMap();
        map.put("name","huihui");
        map.put("sex","女");
        map.put("able","代码");
        RedisUtils redisUtils = new RedisUtils();
        redisUtils.setMap(jedis,"person",map);
    }
}

结果

3.列表(List)

java">package com.zking.minoa.wh;
 
import redis.clients.jedis.Jedis;

/**
 * @author是辉辉啦
 *
 */
public class Demo4 {
    public static void main(String[] args) {
        Jedis jedis = new Jedis("192.168.101.129", 6379);
        jedis.auth("123456");
//        存值
//        jedis.lpush("fruit","苹果","香蕉","西瓜");
//        获取列表的长度
//        System.out.println(jedis.llen("fruit"));
//        根据索引获取列表中的元素
//        System.out.println(jedis.lindex("fruit", 2));
//        查看指定范围内的元素
        System.out.println(jedis.lrange("fruit", 0, 1));
    }
}

4.集合(Set)

java">package com.zking.minoa.wh;
 
import redis.clients.jedis.Jedis;

/**
 * @author是辉辉啦
 *
 */
public class Demo5 {
    public static void main(String[] args) {
        Jedis jedis = new Jedis("192.168.101.129", 6379);
        jedis.auth("123456");
//        向集合添加一个或多个元素
//        jedis.sadd("student","wh","xw","huihui");
//        获取集合中的元素数量
//        System.out.println(jedis.scard("student"));
//        是否存在
        System.out.println(jedis.exists("student"));
        System.out.println(jedis.exists("user"));
    }
}

好啦,今天的分享就到这了,希望能够帮到你呢!😊😊   


http://www.niftyadmin.cn/n/5148732.html

相关文章

SAP SD 定价 删除不满足条件的的条件类型

项目上的需求&#xff1a;当销售订单行项目类别满足条件时&#xff0c;根据配置表&#xff0c;删除不满足条件的的条件类型。 直接上增强点&#xff0c;bapi也能跑到这个位置。

基于知识库的chatbot或者FAQ

背景 最近突然想做一个基于自己的知识库&#xff08;knowlegebase&#xff09;的chatbot或者FAQ的项目。未来如果可以在公司用chatgpt或者gpt3.5之后的模型的话&#xff0c;还可以利用gpt强大的语言理解力和搜索出来的用户问题的相关业务文档来回答用户在业务中的问题。 Chat…

【五、http】go的http的信息提交

一、post提交的几种 form表单json文件 1、提交表单 //http的postfunc requstPost(){params : make(url.Values)params.Set("name", "kaiyue")params.Set("age", "18")formDataStr : []byte(params.Encode())formDataByte : bytes.N…

安装Visio后Office三件套打开后出错【亲测可用】

当安装好visio后&#xff0c;可能打开word, PPT, excel后出现格式错误甚至无法打开&#xff0c;或者卡退等离谱错误。此时&#xff0c;无需卸载重装&#xff0c;只需要使用电脑Office的自动修复功能即可&#xff0c;会自动帮助你重装三件套【加上visio是四件套了】 1. 打开设置…

ArGIS Engine专题(16)之GP工具实现影像批量复制重采样和按矢量范围批量裁剪

一、结果预览 (1)影像批量复制和重采样 (2)按矢量范围批量裁剪 二、需求简介 本文的最终目的其实是要实现影像按矢量范围批量裁剪,笔者准备处理的影像范围较大,并且是按各个市分块的,要实现统一裁剪时,需要将各个…

物理内存的组织形式

由于物理地址是连续的&#xff0c;页也是连续的&#xff0c;每个页大小也是一样的。因而对于任何一个地址&#xff0c;只要直接除一下每页的大小&#xff0c;很容易直接算出在哪一页。每个页有一个结构 struct page 表示&#xff0c;这个结构也是放在一个数组里面&#xff0c;这…

ES6~ES13新特性(二)

文章目录 一、ES71.Array Includes2.指数exponentiation运算符 二、ES81.Object values2.Object entries3.String Padding4.Trailing Commas5.Object Descriptors 三、ES9四、ES101.flat flatMap2.Object fromEntries3.trimStart、trimEnd4.其他知识点 五、ES111.BigInt2.Nulli…

适合女生的副业有哪些?整理了六个靠谱副业,女生必看

在这个互联网时代下&#xff0c;女生对于经济独立变得越来越看重。她们与男生一样&#xff0c;对于工作认真努力、追求进步&#xff0c;并且对于副业有着强烈的渴望和热爱。事实上&#xff0c;她们在副业领域的表现要远远超过很多男生&#xff0c;这一点不可否认。 女生在副业方…