打开IDEA在pom.xml导入依赖
注意:要在dependencies标签中导入
redis.clients
jedis
2.9.0
创建一个类,里面写连接Redis的相关代码
public class Redis {
public static void main(String[] args) {
//建立与数据库连接 数据库名称 端口号
Jedis jedis= new Jedis("localhost",6379);
//数据库密码
jedis.auth("123456");
//测试是否连接成功 连接成功返回PONG
System.out.println(jedis.ping());
}
}
如果运行显示PONG即可表明连接成功
如下图:
String(字符串)
string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。
string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。
string类型是Redis最基本的数据类型,一个redis中字符串 value 最多可以是512M。
package com.zking.ssm.common;
import redis.clients.jedis.Jedis;
public class dome2 {
public static void main(String[] args) {
//建立与数据库连接
Jedis jedis = new Jedis("localhost", 6379);
//设置密码
jedis.auth("123456");
//测试是否连接上
System.out.println(jedis.ping());
//================================
//连接数据库
jedis.select(3);
//存值
jedis.set("uname","ar.小白");
//取值
System.out.println(jedis.get("uname"));
//设置该hobby多久后自动删除
jedis.setex("hobby",25,"game");
//查看剩余时间
System.out.println(jedis.ttl("hobby"));
//修改
jedis.set("uname","小白");
System.out.println(jedis.get("uname"));
//删除
System.out.println(jedis.del("uname"));
}
}
Hash(哈希,类似java里的Map)
Redis hash 是一个键值对集合。
Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。
类似Java里面的Map
。
package com.zking.ssm.common;
import redis.clients.jedis.Jedis;
import java.util.HashMap;
public class dome2 {
public static void main(String[] args) {
//建立与数据库连接
Jedis jedis = new Jedis("localhost", 6379);
//设置密码
jedis.auth("123456");
//测试是否连接上
System.out.println(jedis.ping());
//================================
//连接第数据库
jedis.select(3);
// 存值
jedis.hset("man","sname","帅哥");
jedis.hset("man","sage","18");
jedis.hset("man","sex","男");
// 取指定的字段值
System.out.println(jedis.hget("man", "sname"));
// 删除值
System.out.println(jedis.hdel("man","sage"));
// 查询指定的key的所有字段
System.out.println(jedis.hgetAll("man"));
// 查询指定的key是否存在
System.out.println(jedis.hexists("man", "sname"));
System.out.println(jedis.hexists("man", "sage"));
// 获取指定key的长度
System.out.println(jedis.hlen("man"));
}
}
List(列表)
Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)。
它的底层实际是个链表。
package com.zking.ssm.common;
import redis.clients.jedis.Jedis;
public class dome2 {
public static void main(String[] args) {
//建立与数据库连接
Jedis jedis = new Jedis("localhost", 6379);
//设置密码
jedis.auth("123456");
//测试是否连接上
System.out.println(jedis.ping());
//================================
//连接第数据库
jedis.select(3);
// lpush key value1 value2 value3 将一个或多个值插入到列表头部
jedis.lpush("List_hobby", "唱", "跳", "rap", "篮球");
// llen key 获取列表的长度
System.out.println(jedis.llen("List_hobby"));
// lindex key index 根据索引获取列表中的元素
System.out.println(jedis.lindex("List_hobby", 0));
// lrange key start sop 查看指定范围内的元素
System.out.println(jedis.lrange("List_hobby", 0, 2));
}
}
Set(集合)
Redis的Set是string类型的无序集合。它是通过HashTable实现的。
package com.zking.ssm.common;
import redis.clients.jedis.Jedis;
import java.util.Set;
public class dome2 {
public static void main(String[] args) {
//建立与数据库连接
Jedis jedis = new Jedis("localhost", 6379);
//设置密码
jedis.auth("123456");
//测试是否连接上
System.out.println(jedis.ping());
//================================
//连接第数据库
jedis.select(3);
// Redis集合(Set)
// sadd key value1 [value2] 向集合添加一个或多个元素
jedis.sadd("set_user", "ar", "小白", "牛马", "6");
// scard key 获取集合中的元素数量
System.out.println(jedis.scard("set_user"));
// exists key 是否存在
System.out.println(jedis.exists("set_user"));
}
}
redis常见数据类型操作命令参考
Redis 命令参考
Redis 官网命令参考