jedis:使用Java调用Redis

一、安装jedis

开始在 Java 中使用 Redis 前, 我们需要确保已经安装了 redis 服务及 Java redis 驱动,且你的机器上能正常使用 Java。安装redis的步骤在这里就不做详细介绍了。可以参考我的博文Linux下安装redis.

下载jedis驱动包,我使用maven方式导入,简单快速,大家可以从Maven Repository中下载,选择下载量比较高的版本。
在这里插入图片描述

<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>2.9.0</version>
</dependency>

这样,jedis驱动包就已经导入完毕,下面开始使用java代码连接redis。

二、连接Redis

首先,我们先获取到启动redis服务器的IP和端口号,端口一般默认使用6379。使用如下代码即可测试redis是否能成功连接。

	@Test
	public void connTest() {
		Jedis jedis = new Jedis("192.168.0.106", 6379);
		System.out.println("连接成功!");
		System.out.println("服务正在运行: " + jedis.ping());
		jedis.set("name", "jie_ming514");
		String name = jedis.get("name");
		System.out.println(name);
	}

控制台信息:
在这里插入图片描述
然后我们去redis上看看name这个key是否等于“jie_ming514”
在这里插入图片描述
OK,信息完全正确,说明连接没有问题。

三、存储不同的Redis数据结构类型数据

3.1.字符串类型

	@Test
	public void redisStringTest() {
		Jedis jedis = new Jedis("192.168.0.106", 6379);
		System.out.println("连接成功!");
		jedis.set("name", "jie_ming514");
		String name = jedis.get("name");
		System.out.println(name);
        System.out.println("redis 存储的字符串为: "+ jedis.get("name"));
	}

输出结果:
在这里插入图片描述

3.2.list类型

	@Test
	public void redisListTest() {
		//连接本地的 Redis 服务
		Jedis jedis = new Jedis("192.168.0.106", 6379);
        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));
        }
	}

输出结果:
在这里插入图片描述

四、使用连接池方式连接Redis

和关系型数据库一样,创建连接Redis数据库对象的资源是非常有限的,而且每次创建和销毁都是非常耗时的,所以推荐使用Redis连接池的方式连接Redis。

	@Test
	public void ConnByPoolTest() {
		JedisPoolConfig config = new JedisPoolConfig();
		//设置最大的连接数
		config.setMaxTotal(30);
		//设置最大空闲数
		config.setMaxIdle(10);
		
		JedisPool pool = new JedisPool(config, "192.168.0.102", 6379);
		Jedis jedis = null;
		try {
			jedis = pool.getResource();
			jedis.set("city", "shanghai");
			String name = jedis.get("city");
			System.out.println(name);
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			if(jedis != null) {
				jedis.close();
			}
			if(pool != null) {
				pool.close();
			}
		}
	}
发布了19 篇原创文章 · 获赞 67 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/m1090760001/article/details/103883223