Redis客户端

自带命令行客户端

 命令格式

./redis-cli -h 127.0.0.1 -p 6379

 修改redis配置文件(解决IP绑定问题)

# bind 127.0.0.1绑定的IP才能访问redis服务器,注释掉该配置

protected-mode yes  是否开启保护模式yes该为no

默认方式

如果不指定主机和端口也可以

./redis-cli

默认主机地址是127.0.0.1

默认端口是6379

连接超时解决

远程连接redis服务,需要关闭或者修改防火墙配置。

修改防火墙设置:

 第一步:编辑iptables

vim /etc/sysconfig/iptables

在命令模式下,选定要复制的那一行的末尾,然后点击键盘yyp,就完成复制,然后修改

l 第二步:重启防火墙

service iptables restart
iptables:清除防火墙规则:                                 [确定]
iptables:将链设置为政策 ACCEPT:filter                    [确定]
iptables:正在卸载模块:                                   [确定]
iptables:应用防火墙规则:                                 [确定]

 数据库支持

默认一共是16个数据库,每个数据库之间是相互隔离(但是可以使用flushall一次清空所有的库)。数据库的数量是在redis.conf中配置的。

 

 切换数据库使用命令:select 数据库编号0-15)

例如:select 1

程序客户端之Java客户端Jedis

Jedis介绍

 Redis不仅使用命令客户端来操作,而且可以使用程序客户端操作。

 现在基本上主流的语言都有客户端支持,比如JavaC、C#、C++、php、Node.js、Go等。

 在官方网站里列一些Java的客户端,有JedisRedisson、Jredis、JDBC-Redis、等其中官方推荐使用Jedis和Redisson。

 在企业中用的最多的就是Jedis,下面我们就重点学习下Jedis。

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

 

添加jar包

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

单实例连接

注意事项:需要去设置redis服务器的防火墙策略(临时关闭、永久关闭、端口暴露)

 

@Test
	public void testJedis() {
		//创建一个Jedis的连接
		Jedis jedis = new Jedis("127.0.0.1", 6379);
		//执行redis命令
		jedis.set("key1", "hello world");
		//从redis中取值
		String result = jedis.get("key1");
		//打印结果
		System.out.println(result);
		//关闭连接
		jedis.close();
		
	}

连接池连接

@Test
	public void testJedisPool() {
		//创建一连接池对象
		JedisPool jedisPool = new JedisPool("127.0.0.1", 6379);
		//从连接池中获得连接
		Jedis jedis = jedisPool.getResource();
		String result = jedis.get("key1") ;
		System.out.println(result);
		//关闭连接
		jedis.close();
		
		//关闭连接池
		jedisPool.close();
	}

测试代码

@Test
	public void testJedisPool() {
		JedisPool pool = (JedisPool) applicationContext.getBean("jedisPool");
		Jedis jedis = null;
		try {
			jedis = pool.getResource();

			jedis.set("name", "lisi");
			String name = jedis.get("name");
			System.out.println(name);
		} catch (Exception ex) {
			ex.printStackTrace();
		} finally {
			if (jedis != null) {
				// 关闭连接
				jedis.close();
			}
		}
	}

 

客户端操作Redis

redis是一个key-value的Nosql,我们能操作就只有String类型key以及各种类型value.但是一定要注意我们添加的一般都是字符串,只是会组织为特定数据结构.

set(key ,map,set)  -->  set(key ,1),set(key ,"2")

注意:要先启动redis服务端

对value为string类型的常用操作

set key value       //将字符串值value关联到key
get key               //返回key关联的字符串值

 

 mset               //同时设置一个或多个 key-value 对
mget              //返回所有(一个或多个)给定 key 的值

 

incr key                     //将 key 中储存的数字值增1(key不存在,则初始化为0,再加1)
decr key                  //将 key 中储存的数字值减1(key不存在,则初始化为0,再减1)
incrBy key                  //自增多少
decrBy key

 对key的常用操作

keys *                    //获取所有key列表
del key                    //删除key
expire key xx                   //设置key的过期时间(xx秒后过期)
ttl key                  //查看key的过期时间

select 0-15             //选择库
flushall                   //清空整个redis服务器数据,所有的数据库全部清空
flushdb                  //清除当前库,redis中默认有16个数据库,名称分别为0,1,2...15

 

 

 

原文地址:https://www.cnblogs.com/caocw/p/12245656.html