1.安装好Redis服务端,客户端之后,启动服务端,就可以使用java进行简单操作
2.下载Java redis驱动包(jedis.jar),确保下载最新驱动包,导入项目(Maven引入)
3.应用实例如下:
(1) Java连接到Redis服务器:
public class RedisTest {
public static void main(String[] args) {
//redis的默认端口是6379不需要写,如果更改了必须填写
Jedis jedis = new Jedis("localhost");
//验证密码,如果没有设置密码这段代码省略
jedis.auth("password");
System.out.println("Connection to server sucessfully");
System.out.println("Server is running:"+jedis.ping());}}
(2)Redis Java String示例
public class RedisStringTest {
public static void main(String[] args) {
Jedis jedis = new Jedis("localhost");
System.out.println("Connection to server sucessfully");
String set = jedis.set("name", "李四");
System.out.println("存储的字符串为:"+jedis.get("name"));}//存储的字符串为: 李四
(3)Redis Java List示例
public static void main(String[] args) {
//连接本地的 Redis 服务
Jedis jedis = new Jedis("localhost");
System.out.println("连接成功");
//存储数据到列表中
jedis.lpush("site-list", "Runoob");
jedis.lpush("site-list", "Google");
jedis.lpush("site-list", "Taobao");
// 获取存储的数据并输出
List<String> list = jedis.lrange("site-list", 0 ,2);
for(int i=0; i<list.size(); i++) {
System.out.println("列表项为: "+list.get(i)); }}
//列表项为: Taobao 列表项为: Google 列表项为: Runoob
(4)Redis Java Keys 实例
public static void main(String[] args) {
//连接本地的 Redis 服务
Jedis jedis = new Jedis("localhost");
System.out.println("连接成功");
// 获取数据并输出
Set<String> keys = jedis.keys("*");
Iterator<String> it=keys.iterator() ;
while(it.hasNext()){
String key = it.next();
System.out.println("存储的keys键值有:"+key);}}//name site-list
(5)Redis Java Map 实例
public static void main(String[] args) {
// 连接本地的 Redis 服务
Jedis jedis = new Jedis("localhost");
System.out.println("连接成功");
Map<String, String> map = new HashMap();
map.put("userName", "jack");
map.put("password", "123");
map.put("age", "12");
// 将map存入redis中
jedis.hmset("myMap", map);
// 取出redis中的map进行遍历
Map<String, String> userMap = jedis.hgetAll("myMap");
for (Map.Entry<String, String> item : userMap.entrySet()) {
System.out.println(item.getKey() + " : " + item.getValue());}}
(6)Redis Java Set 实例
public static void main(String[] args){
// connect redis server
Jedis redis = new Jedis("127.0.0.1",6379);
// 首先清除redis中的原有的键
redis.del("name");
redis.del("myMap");
redis.del("site-list");
// 向Set集合存放元素
redis.sadd("fruit","苹果","橘子","苹果","香蕉","李子");
// 自动去重
System.out.println(redis.smembers("fruit"));}
4.Redis客户端相关操作
(1)默认情况下,redis会生成0-15号共16个db,以供不同情境使用的需要
(2)默认情况下,redis存储数据会保存在db0
(3)不同的数据库下,相同的key各自独立
(4)redis客户端默认情况的设置:
<1>修改数据库的个数:
1.只能修改配置文件来生效
2.修改配置文件后需重启才能生效
在redis服务器配置文件:redis.windows.conf/redis.windows-service.conf中可以更改数据库数量,最大255
<2>切换数据库--SELECT:
1.在redis-cli下:
1.1.切换到数据库1:127.0.0.1:6379> select 1
2.获取当前的db数:CONFIG GET databases
3.切换到不存在的db会报错
(5)查看数据库的使用情况:
<1>在redis-cli命令行下,通过INFO KEYSPACE 查看数据库db相关的统计信息
<2>info keyspace命令输出的统计信息是所有db的,不同db下执行结果相同
5.各个数据类型最大存储量:
(1)Strings类型:一个String类型的value最大可以存储512M
(2)Lists类型:list的元素个数最多为2^32-1个,也就是4 294 967 295个
(3)Sets类型:元素个数最多为2^32-1个,也就是4 294 967 295个
(4)Hashes类型:键值对个数最多为2^32-1个,也就是4 294 967 295个
(5)Sorted sets类型:跟Sets类型相似