10. java操作Redis

10.1 环境准备

1. 引入依赖

redis.clients

jedis

2.9.0

2.创建jedis对象

package org.example;

import redis.clients.jedis.Jedis;

import java.util.Set;

public class TestRedis {

public static void main(String[] args) {

//1.创建jedis对象 这步之前要确保防火墙关闭,redis开启远程连接

Jedis jedis = new Jedis("192.168.159.143",7000);

//选择操作的库默认0号库

jedis.select(0);

//2.执行相关操作:查看key

Set keys = jedis.keys("*");

keys.forEach(key->System.out.println(key));

//3.释放资源

jedis.close();

}

}

10.2 操作key相关API

package org.example;

import org.junit.After;

import org.junit.Before;

import org.junit.Test;

import redis.clients.jedis.Jedis;

public class TestKey {

private Jedis jedis;

@Before

public void before(){

jedis = new Jedis("192.168.159.143",7000);

}

@After

public void after(){

jedis.close();

}

@Test

public void testKeys(){

//删除一个key

jedis.del("name");

//删除多个key

jedis.del("name","age");

//判断一个key是否存在exits

Boolean name = jedis.exists("name");

System.out.println(name);

//设置一个key超时时间 expire pexpire

Long age = jedis.expire("age", 100);

System.out.println(age);

//获取一个key超时时间 ttl

Long age1 = jedis.ttl("newage");

System.out.println(age1);

//随机获取一个key

String s = jedis.randomKey();

//修改key名称

jedis.rename("age","newage");

//查看可以对应值的类型

String name1 = jedis.type("name");

System.out.println(name1);

String maps = jedis.type("maps");

System.out.println(maps);

}

}

image-20200627180325687.png

10.3操作String相关API

package org.example;

import org.junit.After;

import org.junit.Before;

import org.junit.Test;

import redis.clients.jedis.Jedis;

import java.util.List;

public class TestString {

private Jedis jedis;

@Before

public void before(){

jedis = new Jedis("192.168.159.143",7000);

}

@After

public void after(){

jedis.close();

}

@Test

public void test(){

//set

jedis.set("name","小陈");

//get

String s = jedis.get("name");

System.out.println(s);

//mset

jedis.mset("content","好人","address","海淀区");

//mget

List mget = jedis.mget("name", "content", "address");

mget.forEach(v-> System.out.println("v = " + v));

//getset

String set = jedis.getSet("name", "小明");

System.out.println(set);

//............

}

}

image-20200627180352953.png

10.4操作List相关API

package org.example;

import org.junit.After;

import org.junit.Before;

import org.junit.Test;

import redis.clients.jedis.BinaryClient;

import redis.clients.jedis.Jedis;

import java.util.List;

public class TestList {

private Jedis jedis;

@Before

public void before(){

jedis = new Jedis("192.168.159.143",7000);

}

@After

public void after(){

jedis.close();

}

@Test

public void test(){

//lpush

jedis.lpush("names1","张三","王五","赵柳","win7");

//rpush

jedis.rpush("names1","xiaomingming");

//lrange

List names1 = jedis.lrange("names1", 0, -1);

names1.forEach(name-> System.out.println("name = " + name));

//lpop rpop

String names11 = jedis.lpop("names1");

System.out.println(names11);

//llen

jedis.linsert("lists", BinaryClient.LIST_POSITION.BEFORE,"xiaohei","xiaobai");

//........

}

}

image-20200627180435997.png

10.5操作Set的相关API

package org.example;

import org.junit.After;

import org.junit.Before;

import org.junit.Test;

import redis.clients.jedis.Jedis;

import java.util.Set;

public class TestSet {

private Jedis jedis;

@Before

public void before(){

jedis = new Jedis("192.168.159.143",7000);

}

@After

public void after(){

jedis.close();

}

@Test

public void test(){

//sadd

jedis.sadd("names","zhangsan","lisi");

//smembers

Set names = jedis.smembers("names");

names.forEach(name->System.out.println(name));

//sismember

Boolean sismember = jedis.sismember("names", "xiaochen");

//...

}

}

image-20200627181913715.png

10.6 操作ZSet相关API

package org.example;

import org.junit.After;

import org.junit.Before;

import org.junit.Test;

import redis.clients.jedis.Jedis;

import java.util.Set;

public class TestZSet {

private Jedis jedis;

@Before

public void before(){

jedis = new Jedis("192.168.159.143",7000);

}

@After

public void after(){

jedis.close();

}

@Test

public void test(){

//zadd

jedis.zadd("names",10,"张三");

//zrange

jedis.zrange("names",0,-1);

//zcard

jedis.zcard("names");

//zrangeByScore

jedis.zrangeByScore("names","0","100",0,5);

//..

}

}

image-20200627181947116.png

10.7 操作Hash相关API

//测试HASH相关

@Test

public void testHash(){

//hset

jedis.hset("maps","name","zhangsan");

//hget

jedis.hget("maps","name");

//hgetall

jedis.hgetAll("mps");

//hkeys

jedis.hkeys("maps");

//hvals

jedis.hvals("maps");

//....

}

image-20200628093242527.png

java 操作 redis_java操作Redis相关推荐

  1. java web redis_java web redis使用(二)

    上篇中已经安装好redis,然后下面就说怎么在java web中用客户端来使用regis 使用jedis java客户端 一:一个简单的示例代码: public  static  void main( ...

  2. jedis操作set_Jedis对redis的五大类型操作代码详解

    本篇主要阐述Jedis对redis的五大类型的操作:字符串.列表.散列.集合.有序集合. JedisUtil 这里的测试用例采用junit4进行运行,准备代码如下: private static fi ...

  3. 【Redis】Redis 哈希 Hash 键值对集合操作 ( 哈希 Hash 键值对集合简介 | 查询操作 | 增加操作 | 修改操作 )

    文章目录 一.哈希 Hash 键值对集合 二.查询操作 1.Redis 中查询 Hash 键值对数据 2.查询 Hash 键是否存在 3.查询 Hash 中所有的键 Field 4.查询 Hash 中 ...

  4. Java 使用itextPdf7操作pdf,写入照片这一篇就够了

    Java 使用itextPdf7操作pdf,写入照片这一篇就够了 1. 效果图 1.1 M*N列图片(无边界&有边界) 1.2 图片重叠 1.3 文字背景图片 1.4 图片与文字相邻 & ...

  5. Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy

    Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度 ...

  6. Java使用Jdbc操作MySql数据库(一)

    这个示例是Java操作MySql的基本方法. 在这个示例之前,要安装好MySql,并且配置好账户密码,创建一个logininfo数据库,在数据库中创建userinfo数据表.并且在表中添加示例数据. ...

  7. java 字节数组 操作_Java-固定字节数组对象

    我需要通过TCP / socket连接到第三方系统并检索一些数据. 将要发送的数据格式为固定长度格式和二进制. 请求示例: short MessageID = 5; int TransactionTr ...

  8. Java数组常见操作

    Java数组常见操作 文章目录 Java数组常见操作 7.0 数组的遍历 1.使用foreach循环访问数组中每个元素. 2.使用简单的for循环(多层循环嵌套)来遍历数组. 7.1 数组长度 7.2 ...

  9. java 操作 ldap_JAVA操作LDAP总结

    一.LDAP概念 LDAP的全称为Lightweight Directory Access Protocol(轻量级目录访问协议), 基于X.500标准, 支持 TCP/IP. LDAP目录为数据库, ...

最新文章

  1. mysql %type_mysql 存储过程 %type
  2. 深度学习在目标视觉检测中的应用进展与展望
  3. Linux环境变量加载的研究
  4. 学java时的一些笔记(2)
  5. [云炬创业基础笔记]第二章创业者测试2
  6. 【讨论】拿什么来维护原创作者的权益?
  7. Python3.x的mysqlclient的安装、Python操作mysql,python连接MySQL数据库,python创建数据库表,带有事务的操作,CRUD
  8. Unity3D Input按键系统
  9. [方法“Boolean Contains(System.Guid)”不支持转换为 SQL]的解决办法
  10. 【LeetCode笔记】207. 课程表(Java、图、BFS、队列)
  11. 设置zookeeper开机自启动
  12. Docker基本命令入门
  13. Flask 框架 是 Python 中最流行的 Web 框架之一
  14. hello程序代码python_翻译:《实用的Python编程》01_02_Hello_world
  15. Linux安装winetim简单教程,ubuntu wine安装TIM
  16. IOUtils快速进行内容复制与常用方法
  17. Ubuntu18.04安装COMSOL 5.3a
  18. linux添加usb扫描枪,抓取扫描枪扫描数据的案例
  19. 百度地图JS版本API常见问题
  20. oracle20005,oracle 由于impdp 引起的表统计信息被锁 ORA-20005: object statistics are locked...

热门文章

  1. otsu算法原理及C++代码实现-寻找灰度图片中最佳阈值
  2. Vue项目中使用wangEditor富文本输入框(推荐)
  3. vim中删除dos格式文件中的^M号的方法以及深度规整文件格式
  4. r-route 命令 显示/配置ip路由表
  5. IFeature接口
  6. 快速求斯特林数总结(洛谷模板题解)
  7. 关于C#调用非托管DLL,报“内存已损坏的”坑,坑,坑
  8. 前端开发基础7(Bootstrap框架)
  9. C# webform上传图片并生成缩略图
  10. 【转载】Linux下安装、配置、启动Apache