Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Redis

Redis Sets ด้วย Jedis: CRUD Operations ใน Java ครบถ้วน

ในบทเรียนนี้ เราจะเรียนรู้วิธีการทำ CRUD operation บน set value โดยใช้ Jedis library

Jedis Library

Jedis เป็น Java client library สำหรับ Redis datastore มีขนาดเล็ก ใช้งานง่าย และรองรับ Redis 2.8.x, 3.x.x และขึ้นไป

Set Value

Set คือ unordered collection ของ unique elements ใน Redis sets ถูกเก็บเป็น value

Project Setup

สร้าง Maven project และเพิ่ม dependency ใน pom.xml:

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

Redis Installation

ติดตั้ง Redis เวอร์ชันล่าสุด

Jedis Connection

Jedis jedis = new Jedis();

Create & Add

sadd แทรกสมาชิกหนึ่งหรือหลายรายการใน set value หาก set ไม่มีอยู่จะสร้าง key ใหม่ก่อน:

jedis.sadd("set-1", "a", "b", "c", "d"); 
jedis.sadd("set-2".getBytes(),"1".getBytes(),"2".getBytes());

Check Member Existence

sismember ตรวจสอบสมาชิกอยู่ใน set หรือไม่:

jedis.sismember("set-1", "ab"); 
jedis.sismember("set-2".getBytes(), "1".getBytes());

Remove & Return

spop ลบและคืนค่าสมาชิกสุ่มหนึ่งหรือหลายรายการ:

jedis.spop("set-1"); 
jedis.spop("set-1", 3);

Size

scard หาขนาดของ set value:

jedis.scard("set-1");

Delete

srem ลบสมาชิกหนึ่งหรือหลายรายการ:

jedis.srem("set-1", "a", "b", "c"); 
jedis.srem("set-1".getBytes(), "1".getBytes(), "b".getBytes());

Get All

smembers ดึงสมาชิกทั้งหมดของ set:

jedis.smembers("set-1");

Union

  1. sunion: Union ของ set หลายอัน คืนค่า array
    jedis.sunion("set-1", "set-2");
  2. sunionstore: Union และเก็บผลใน set ใหม่
    jedis.sunionstore("set-3", "set-1", "set-2");

Intersection

  1. sinter: Intersection ของ set หลายอัน คืนค่า array
    jedis.sinter("set-1", "set-2");
  2. sinterstore: Intersection เก็บผลใน set ใหม่
    jedis.sinterstore("set-3", "set-1", "set-2");

Difference

  1. sdiff: Difference ของ set หลายอัน คืนค่า array
    jedis.sdiff("set-1", "set-2");
  2. sdiffstore: Difference เก็บผลใน set ใหม่
    jedis.sdiffstore("set-3", "set-1", "set-2");

อ้างอิง

  1. Set Command Docs

ขอจบบทเรียนสำหรับวิธีทำ CRUD operation บน set value โดยใช้ Jedis library หากชอบบทเรียนนี้ กรุณาแบ่งปันความคิดเห็นและแชร์ให้ผู้อื่นด้วยครับ