Redis领进门之修行靠Jedis

版权声明:版权所有,违者必究 https://blog.csdn.net/weixin_39921821/article/details/90052493

一.首先何为Jedis?

Jedis = Java + Redis;  //没错,就是这样的^_^

二.Jedis和Redis的渊源

  1.Redis不仅是使用命令来操作的,现在基本上主流的语言都有客户端的支持,比如java,C,C#,C++,PHP,Node.js,Go等语言。

  在官方网站里列一些Java的客户端,有Jedis,Redisson,Jredis,JDBC-Redis,等其中官方推荐使用Jedis和Redisson。在企业中用的     最多的就是Jedis,下面就以市场上用的最多的Jedis来了解一哈:

   2. Jedis也是托管在github上的,托管地址:https://github.com/xetorthio/jedis

注:没错,你看到的这个就是了

三.俺只懂Java,所以用Java来连接一下Redis 

1.首先要下载好需要的jar包

这两个jar包是必须要的,可以提前下载好,仍进java工程,然后引入

2.写一个测试类

package com.yinxin.Jedis;

import redis.clients.jedis.Jedis;

public class JedisTest {
	public static void main(String[] args) {
		//1.设置ip地址和端口
		Jedis jedis=new Jedis("172.16.10.118",6379);
		//添加数据
		jedis.set("name","zhangsan");
		//获取数据
		String name=jedis.get("name");
		System.out.println("获取name属性的值:"+name);
		//释放资源
		jedis.close();
		
	}

}

 如果执行就会出现如下结果:

 ① 抛出连接超时的异常,原因是没有关闭远程服务器上的6379这个端口的防火墙

②必须设置linux防火墙,所以接下来就需要先关掉这个防火墙,并且永久保存让其生效

vim /etc/sysconfig/iptables

添加6379端口 

service iptables restart

③ 关掉防火墙

systemctl stop firewalld.service

防火墙关了之后就好了,就可以用程序试了,如图:

Java程序和客户端获取的数据一样

3.连接池连接

代码部分:

package com.yinxin.Jedis;

import org.junit.Test;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

public class JedisTest {

	@Test
	public void testJedisPool(){
		//获取连接池配置对象,设置配置项
		JedisPoolConfig config=new JedisPoolConfig();
		//最大连接数
		config.setMaxTotal(30);
		//最大空闲连接数
		config.setMaxIdle(10);
		
		JedisPool jedisPool=new JedisPool(config,"172.16.10.111",6379);
		
		//获得核心对象
		Jedis jedis=null;
		jedis=jedisPool.getResource();
		
		//设置数据
		jedis.set("name","yinxin");
		//获取数据
		String name=jedis.get("name");
		System.out.println("name为["+name+"]");
		if(jedis!=null){
			jedis.close();
		}
		//虚拟机关闭时,释放pool资源
		if(jedisPool!=null){
			jedisPool.close();
		}
		
		
	}

}

从连接池中获取的值,如图:

猜你喜欢

转载自blog.csdn.net/weixin_39921821/article/details/90052493