1. 程式人生 > >一個java使用redis的簡單案例

一個java使用redis的簡單案例

info user private ont art redist else ati 本地

這個例子中,java使用Jedis來操作Redis

1、引入Jedis的依賴

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

2、連接Redis,通過ping命令測試連接

package com.example.redisdemo.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import redis.clients.jedis.Jedis;

@RestController
public class RedisTest {

    private Jedis jedis;

    RedisTest(){
        if(jedis == null){
            jedis = new Jedis("localhost");
            System.out.println(jedis);
        }else{
            System.out.println("jedis isn‘t null");
        }
    }

    @RequestMapping("/testconn")
    public String testConn(){
        String ping = jedis.ping();
        return ping;
    }

}

因為是本地測試,就直接通過jedis = new Jedis("localhost");創建Jedis實例了,對於遠程連接的話,應該通過這種方式創建實例:

Jedis jedis = new Jedis(ip,端口號);
jedis.auth(訪問密碼);

運行結果:

技術分享圖片

3、set/get/del實例

@RequestMapping("/setKey")
public String setKey(@RequestParam("key")String key, @RequestParam("value")String value){
   String result 
= jedis.set(key, value); return result; } @RequestMapping("/getKey") public String getKey(@RequestParam("key")String key){ String username = jedis.get(key); System.out.print(username); return username; } @RequestMapping("delKey") public Long delKey(@RequestParam("key")String key){ Long result
= jedis.del(key); return result; }

新增鍵值:

技術分享圖片

查詢鍵值:

技術分享圖片

刪除鍵值:

技術分享圖片

刪除鍵值後再查詢,username返回的結果為null

4、隊列+過期時間

Redis除了支持普通的String類型的鍵值對,還有稍微復雜些的列表,HashTable,無序/有序集合,這裏寫個復雜些的例子,即隊列與過期時間,前者是人物隊列常用的功能,後者是緩存常用的功能。

一個java使用redis的簡單案例