首先在Windows環境下載好redis並啓動,由於官方沒有Windows的版本,Redis項目不正式支持Windows。 但是,Microsoft開放技術小組開發和維護這個Windows端口針對Win64。
- Windows下的redis下載鏈接:
https://github.com/microsoftarchive/redis/releases
然後選擇你喜歡的版本zip或msi下載,這裏建議下載 3.0.504 版本,因爲 3.2.100 不是穩定版本
-
安裝後,打開安裝目錄,
-
雙擊redis-server.exe啓動redis服務器
-
雙擊redis-cli.exe打開redis客戶端(用來執行命令,訪問服務器的)
客戶端連接redis
- 連接redis
Jedis jedis = new Jedis("localhost", 6379);
- 操作redis
jedis.set("name", "xdr630");
jedis.get("name");
- 關閉redis連接
jedis.close();
案例
- 新建一個新的maven項目,我這裏採用的是eclipse編寫
- pom.xml中添加jedis依賴
<dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
</dependencies>
- 編寫一個測試類,如:JedisTest.java
package com.xdr630;
import org.junit.Test;
import redis.clients.jedis.Jedis;
public class JedisTest {
@Test
public void testJedis() {
//1.連接redis
Jedis jedis = new Jedis("127.0.0.1",6379);
//2.操作redis
jedis.set("name", "xdr630");
//3.關閉連接
jedis.close();
}
}
運行後控制檯並沒有出現效果,這是因爲上述代碼只把name中的值存儲在redis中了,取出所存的值
package com.xdr630;
import org.junit.Test;
import redis.clients.jedis.Jedis;
public class JedisTest {
@Test
public void testJedis() {
//1.連接redis
Jedis jedis = new Jedis("127.0.0.1",6379);
//2.操作redis
// jedis.set("name", "xdr630");
String name = jedis.get("name");
System.out.println(name);
//3.關閉連接
jedis.close();
}
}
測試成功:
控制檯輸出所存儲的值
也可以啓動redis客戶端來獲取剛纔存儲的值:
操作List
接着上一個案例:再編寫一個測試類
@Test
public void testList() {
//1.連接redis
Jedis jedis = new Jedis("127.0.0.1",6379);
//2.操作redis
jedis.lpush("list1", "a","b","c");
jedis.rpush("list1", "x");
List<String> list1 = jedis.lrange("list1",0, -1);
for(String s : list1) {
System.out.println(s);
}
System.out.println(jedis.llen("list1"));
System.out.println();
//3.關閉連接
jedis.close();
}
操作Hash
@Test
public void testHash() {
//1.連接redis
Jedis jedis = new Jedis("127.0.0.1",6379);
//2.操作redis
jedis.hset("hash1", "a1", "a1");
jedis.hset("hash1", "a2", "a2");
jedis.hset("hash1", "a3", "a3");
Map<String, String> hash1 = jedis.hgetAll("hash1");
System.out.println(hash1);
System.out.println(jedis.hlen("hash1"));
//3.關閉連接
jedis.close();
}