前面两篇说过redis的安装使用和密码设置后,现在来看看怎么用java代码连接服务器,并使用redis。
首先项目中需要有redis的驱动包,下载Jedis.jar。
下载最新驱动包,放到项目的lib目录下,确保项目包含该驱动包。
如果是maven项目,可以直接在pom.xml文件中引入如下配置:
[html] view plain copy
1. <dependency>
2. <groupId>redis.clients</groupId>
3. <artifactId>jedis</artifactId>
4. <version>2.5.2</version>
5. </dependency>
连接Redis服务:
[java] view plain copy
1. public static void main(String[] args){
2. //连接本地的Redis服务
3. new Jedis("127.0.0.1", 6379);
4. "连接成功!");
5. //密码验证
6. "123456");
7. //查看服务是否运行
8. "服务是否运行:" + jedis.ping());
9. }
输出结果如下,连接成功。
[plain] view plain copy
- 连接成功!
- 服务是否运行:PONG
String(字符串) 类型实例
[java] view plain copy
1. public static void main(String[] args){
2. //连接本地的Redis服务
3. new Jedis("127.0.0.1", 6379);
4. "连接成功!");
5. //密码验证
6. "123456");
7. //设置字符串数据
8. "myKey", "testStr");
9. //通过key输出缓存内容
10. "输出内容为:" + jedis.get("myKey"));
11. }
输出结果:
[javascript]
view plain
copy
- 连接成功!
- 输出内容为:testStr
LIst(列表)类型实例
[java] view plain copy
1. public static void main(String[] args){
2. //连接本地的Redis服务
3. new Jedis("127.0.0.1", 6379);
4. "连接成功!");
5. //密码验证
6. "123456");
7. //存储List缓存数据
8. "test-list", "Java");
9. "test-list", "PHP");
10. "test-list", "C++");
11. //获取list缓存数据
12. "test-list", 0, 3);
13. for (int i = 0; i < listCache.size(); i++) {
14. "缓存输出:" + listCache.get(i));
15. }
16. }
输出结果:
[plain] view plain copy
- 连接成功!
- 缓存输出:C++
- 缓存输出:PHP
- 缓存输出:Java
Hash(哈希)类型实例
[java] view plain copy
1. public static void main(String[] args){
2. //连接本地的Redis服务
3. new Jedis("127.0.0.1", 6379);
4. "连接成功!");
5. //密码验证
6. "123456");
7. //存储Hash类型缓存数据
8. new HashMap<String, String>();
9. "xiaoming", "man");
10. "xiaohua", "women");
11. "xiaoma", "man");
12. "test-hash", hashMap);
13. //获取hash类型缓存数据
14. "test-hash");
15. "获取hash缓存数据(xiaoming):"+hashData.get("xiaoming"));
16. "获取hash缓存数据(xiaohua):"+hashData.get("xiaohua"));
17. "获取hash缓存数据(xiaoma):"+hashData.get("xiaoma"));
18. }
输出结果:
[plain]
view plain
copy
- 连接成功!
- 获取hash缓存数据(xiaoming):man
- 获取hash缓存数据(xiaohua):women
- 获取hash缓存数据(xiaoma):man
Set(无序,不重复集合) 类型实例
[java] view plain copy
1. public static void main(String[] args){
2. //连接本地的Redis服务
3. new Jedis("127.0.0.1", 6379);
4. "连接成功!");
5. //密码验证
6. "123456");
7. //存储Set缓存数据
8. "test-set", "Java");
9. "test-set", "PHP");
10. "test-set", "C++");
11. "test-set", "PHP");
12. //获取set缓存数据
13. "test-set");
14. for(String setStr : setCache){
15. "Set集合缓存输出:" + setStr);
16. }
17. }
输出结果:
[plain]
view plain
copy
- 连接成功!
- Set集合缓存输出:PHP
- Set集合缓存输出:C++
- Set集合缓存输出:Java
ZSet(有序,不重复集合) 类型实例
[java] view plain copy
1. public static void main(String[] args){
2. //连接本地的Redis服务
3. new Jedis("127.0.0.1", 6379);
4. "连接成功!");
5. //密码验证
6. "123456");
7. //存储zset类型缓存数据
8. "test-zset",1,"Java");
9. "test-zset",3,"C++");
10. "test-zset",2,"PHP");
11. "test-zset",2,"PHP");
12. //获取zset缓存数据类型
13. "test-zset", 0, 5);
14. for(String setStr : setCache){
15. "获取zset缓存数据:" + setStr);
16. }
17. }
输出结果:
[plain]
view plain
copy
- 连接成功!
- 获取zset缓存数据Java
- 获取zset缓存数据PHP
- 获取zset缓存数据C++
注:zset每个存储元素都会关联一个double类型的数值,redis就是根据这个数值进行排序的,数值可以重复,但是存储元素不可以重复。