首先在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();
}