API 操作Redis : Jedis

Java可以操作数据库,也同样可以操作RedisJedisRedisJava版本的客户端实现。

使用Jedis时,需要引入相关的类库:Commons-pool-1.6.jar, Jedis-2.1.0.jar

Windows中的Eclipse连接虚拟机的Redis的注意事项

  • 禁用Linux的防火墙:Linux里执行命令 service iptables stop
  • redis.conf中注释掉bind 127.0.0.1 ,然后 protect-mode no

通过Jedis我们可以对Redis数据库进行数据访问

import java.util.Iterator;
import java.util.Set;

import redis.clients.jedis.Jedis;

public class JedisUtil {

	public static void main(String[] args) {
		/*
		测试Redis服务器的连接
		如果出现连接失败 : java.net.SocketTimeoutException: connect timed out
		可能的原因是 
		1)Redis服务器,端口号不正确
		2)Redis服务器未启动
		3)远程服务器未放开端口访问 6379
		*/
		Jedis jedis = getJedis();
		System.out.println( jedis.ping() );
		
		/*
		 * 
		 
		 读取Key
		 */
		//jedis.flushDB();
		/*
		Set<String> keySet = jedis.keys("*");
		for (Iterator<String> iterator = keySet.iterator(); iterator.hasNext();) {
		    String key = iterator.next();
		    System.out.println(key);
		}
		System.out.println("key 是否存在====>"+jedis.exists("k2"));
		System.out.println(jedis.ttl("k1"));
		*/
		/*
		 * 操作String数据
		 * 
		 *
		//jedis.flushDB();
		System.out.println(jedis.get("k11"));
		String result = jedis.set("k4","k4_Redis");
		System.out.println(result);
		System.out.println("----------------------------------------");
		jedis.mset("str1","v1","str2","v2","str3","v3");
		System.out.println(jedis.mget("str1","str2","str3"));
		 */
		
		/*
		 * 操作List数据
		
		jedis.flushDB();
		jedis.lpush("k1", "v1", "v2", "v3", "v4", "v5");
		String v1 = jedis.lpop("k1");
		System.out.println( v1 );
		System.out.println("-----------------------");
		List<String> vals = jedis.lrange("k1", 0, -1);
		for ( String val : vals ) {
			System.out.println( val );
		}
		*/
		
		/*
		 * 操作Set数据
		 * 
		jedis.flushDB();
		jedis.sadd("orders","jd001");
		jedis.sadd("orders","jd002");
		jedis.sadd("orders","jd003");
		Set<String> set1 = jedis.smembers("orders");
		for (Iterator<String> iterator = set1.iterator(); iterator.hasNext();) {
		  String string = iterator.next();
		  System.out.println(string);
		}
		long result = jedis.srem("orders","jd002");
		System.out.println( "result = " + result );
		*/
		
		/*
		 * 操作Hash数据
		 * 
		jedis.flushDB();
		jedis.hset("hash1","userName","lisi");
		System.out.println(jedis.hget("hash1","userName"));
		Map<String, String> map = new HashMap<String, String>();
		map.put("telphone","13810169999");
		map.put("address","atguigu");
		map.put("email","abc@163.com");
		jedis.hmset("hash2",map);
		List<String> result = jedis.hmget("hash2", "telphone","email");
		for (String element : result) {
		  System.out.println(element);
		}
		*/
		
		/*
		 * 操作zSet数据
		 
		jedis.flushDB();
		jedis.zadd("zset01",60d,"v1");
		jedis.zadd("zset01",70d,"v2");
		jedis.zadd("zset01",80d,"v3");
		jedis.zadd("zset01",90d,"v4");
		Set<String> s1 = jedis.zrange("zset01",0,-1);
		for (Iterator<String> iterator = s1.iterator(); iterator.hasNext();) {
		  String string = iterator.next();
		  System.out.println(string);
		}
		*/
		jedis.close();
	}
	
	public static Jedis getJedis() {
//		REDIS.SERVER.URL=192.168.1.100
//		REDIS.SERVER.PORT=6379
		Jedis jedis = new Jedis(JedisConf.getVal("REDIS.SERVER.URL"), JedisConf.getIntVal("REDIS.SERVER.PORT"));
		return jedis;
	}
	
	
	
	
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值