Redisson的基本使用


 

一、Redisson簡介

Redisson是Redis官方推薦的Java版的Redis客戶端。

Redisson提供了使用Redis的最簡單和最便捷的方法。Redisson的宗旨是促進使用者對Redis的關注分離(Separation of Concern),從而讓使用者能夠將精力更集中地放在處理業務邏輯上。也可以將Redisson輕松的整合到像SpringHibernate這樣的常用框架里。

Github鏈接:

https://github.com/redisson/redisson

 

二、Redisson使用

(一)引入依賴

<dependency>
   <groupId>org.redisson</groupId>
   <artifactId>redisson</artifactId>
   <version>3.16.3</version>
</dependency>  

(二)具體使用

package com.cskaoyan;

import org.redisson.Redisson;
import org.redisson.api.*;
import org.redisson.config.Config;

import java.util.Iterator;
import java.util.List;


/**
 * @Classname MyRedissionTest
 * @Description
 * @Author terrance_swn
 */
public class MyRedissionTest {
    public static void main(String[] args) {

        //1 創建redission的config對象並配置redis服務器(此處使用singleServer)
        Config config = new Config();
        config.useSingleServer().setAddress("redis://localhost:6379");

        //2 創建redis客戶端redissionClient
        RedissonClient redissonClient = Redisson.create(config);

        //3 使用五種數據結構
        useString(redissonClient);

        useHash(redissonClient);

        useList(redissonClient);

        useSet(redissonClient);

        useSortedSet(redissonClient);


    }

    /**
     * Hash類型
     * @param redissonClient
     */
    private static void useHash(RedissonClient redissonClient) {

        RMap<Object, Object> map = redissonClient.getMap("myFirstMap");
        map.put("productId2","100055301");

        Object productId2 = map.get("productId2");
        System.out.println(productId2);
    }

    /**
     * String 數據類型
     * @param redissonClient
     */
    private static void useString(RedissonClient redissonClient) {

        RBucket<Object> bucket = redissonClient.getBucket("myString-key");
        bucket.set("{\"userName\":\"test\",\"userPwd\":\"test\",\"email\":\"xxx@163.com\",\"captcha\":\"3552\"}");

        Object o = bucket.get();
        System.out.println(o);
    }

    /**
     * List數據類型
     * @param redissonClient
     */
    private static void useList(RedissonClient redissonClient) {
        List<String> list = redissonClient.getList("listKey-32");
        list.add("listValue1");
        list.add("listValue2");

        String s = list.get(0);
        System.out.println(s);
        System.out.println(list);
    }

    /**
     * Set數據類型
     * @param redissonClient
     */
    private static void useSet(RedissonClient redissonClient) {
        RSet<String> set = redissonClient.getSet("setKey-32");
        set.add("setValue");

        Iterator<String> iterator = set.iterator();
        while (iterator.hasNext()) {
            String next = iterator.next();
            System.out.println(next);
        }
    }

    /**
     * Zset數據類型
     * @param redissonClient
     */
    private static void useSortedSet(RedissonClient redissonClient) {
        RScoredSortedSet<String> sortedSet
                = redissonClient.getScoredSortedSet("sortedKey-32");

        sortedSet.add(1.0, "zs");
        sortedSet.add(2.0, "lisi");

        Double score = sortedSet.getScore("zs");
        System.out.println(score);
        Integer rank = sortedSet.rank("zs");
        System.out.println(rank);
    }
}

(三)數據類型的解釋

1.Hash

RMap<Object, Object> map = redissonClient.getMap("myFirstMap");
map.put("productId2","100055301");

 

 

 

 

 

 2.String

  RBucket<Object> bucket = redissonClient.getBucket("myString-key");
  bucket.set("{\"userName\":\"test\",\"userPwd\":\"test\",\"email\":\"xxx@163.com\",\"captcha\":\"3552\"}");

 

 3.List

   List<String> list = redissonClient.getList("listKey-32");
   list.add("listValue1");
   list.add("listValue2");

 

 4.Set

   RSet<String> set = redissonClient.getSet("setKey-32");
   set.add("setValue");

 

 5.Zset

 RScoredSortedSet<String> sortedSet = redissonClient.getScoredSortedSet("sortedKey-32");
 sortedSet.add(1.0, "zs");
 sortedSet.add(2.0, "lisi");

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM