Java Redis初学之Hello World

本人比较懒博客很久都没有写过,最近一段时间稍微空闲一点,特意抽时间练习和完善一下一些底层的基础了解,
平时项目中spring-redis集成用的比较多,今天特意来感受一下原声的redis和jdbc有点像哈!!话不多说,直接撸代码吧!
先上个Hello World以后再陆续更新更深一点的内容......

PS : 项目是maven环境的maven配置,redis是3.2【没有设置用户和密码】

1: maven配置,直接导入jedis配置文件就行, maven会把依赖的jar下载下来

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

如果没有maven环境的同学,需要下载两个jar包(见上传图片)


2:下面是Hello World代码:注释也比较详细,大家要多练习,反复琢磨,举一反三,这样才能更好的理解,尤其是List操作的左右插入


import java.util.HashMap;
import java.util.List;
import java.util.Set;

import redis.clients.jedis.Jedis;

public class RedisDB {

	public synchronized Jedis initConn() {
		String ip = "127.0.0.1";
		int port = 6379;
		Jedis jedis = new Jedis(ip, port);
		return jedis;
	}

	public static void main(String[] args) {
		handleSet();
	}

	

	// Set操作
	public static void handleSet() {
		RedisDB db = new RedisDB();
		Jedis jedis = db.initConn();
		// 添加元素
		jedis.sadd("arrs", "1", "2", "3", "4");

		// 获取元素
		Set<String> arrs = jedis.smembers("arrs");
		for (String arr : arrs) {
			System.out.println(arr);
		}

		// 获取元素个数
		Long len = jedis.scard("arr");
		System.out.println(len);

		// 判断是否包含某个元素
		System.out.println(jedis.sismember("arrs", "1"));

		
		// 删除某个元素
		jedis.srem("arrs", "4");
	}

	// List操作(我们同时可以把List用作队列,左边塞入,右边取出)
	// # list在保存的时候如果已经存在相同的key,则不会再次保存,需要先删除再保存
	public static void handleList() {
		RedisDB db = new RedisDB();
		Jedis jedis = db.initConn();

		// 注意体会下面的lpush和rpush的区别,自己作图好体会一下
		jedis.lpush("nums", "0");
		jedis.rpush("nums", "1", "2", "3", "4", "5");
		// 取出的区间,两边都是闭区间
		List<String> lList = jedis.lrange("nums", 0, 5);
		for (String s : lList) {
			System.out.println(s);
		}
		jedis.del("nums");
		// ------------------------------------------------------
		jedis.rpush("names", "杨二");
		jedis.lpush("names", "张三", "李四", "王五", "赵六", "孙七");
		List<String> list = jedis.lrange("list", 0, 1);
		for (String s : list) {
			System.out.println(s);
		}
		jedis.del("names");
	}

	// Map操作
	public static void handleMap() {
		RedisDB db = new RedisDB();
		Jedis jedis = db.initConn();

		// 保存key,value
		HashMap<String, String> dataMap = new HashMap<String, String>();
		dataMap.put("name", "Moon");
		dataMap.put("age", "25");
		dataMap.put("address", "sichuan");
		jedis.hmset("person", dataMap);

		// 获取key为person中的一个或多个属性
		List<String> infoList = jedis.hmget("person", "name", "age");
		for (String info : infoList) {
			System.out.println(info);
		}

		// 获取当前map中的属性个数
		Long len = jedis.hlen("person");
		System.out.println(len);

		// 获取当前key下面的所有属性
		Set<String> keys = jedis.hkeys("person");
		for (String key : keys) {
			System.out.println(key);
		}

		// 获取当前key下面的所有value
		List<String> values = jedis.hvals("person");
		for (String value : values) {
			System.out.println(value);
		}

		// 删除person中某个属性
		jedis.hdel("person", "address");

		// 删除person
		jedis.del("person");
	}

	// 字符串操作
	public void handleString() {
		RedisDB db = new RedisDB();
		Jedis jedis = db.initConn();

		// 保存key,value
		jedis.set("name", "Moon");
		System.out.println(jedis.get("name"));

		// 追加内容
		jedis.append("name", " is my lover!");
		System.out.println(jedis.get("name"));

		// 删除内容
		jedis.del("name");

		// -------------------------------------
		// 设置多个键值
		jedis.mset("name", "Moon", "age", "34", "address", "sichuan");
		// 年龄+1
		jedis.incr("age");
	}

}

大家多练习, 还是很好撸的.....

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值