- 之前操作数据库我们是用redis-cli来实现的,实际应用中不可能这么使用。实际应用中我们讲和一种开发语言进行搭配使用,
- 从reidis的官网可知它支持如下的语言 :C 、C++、java、C#、等主流语言。下面我们就学习一下如何通过java来操作redis数据库。
reids官方推荐java使用jedis来操作redis数据库库,如下图:http://www.redis.io/clients
- 从官网上下载一下jedis的压缩包,目前已经不提供jar的下载,下载后需要大家自己用maven进行编译生成一个jar,本文提供该jar的下载。
- 引入jar文件,与引入其他的三方jar的方式无异。下面是代码,里面都有注视:
public static void main(String[] args) throws InterruptedException { String hostId = "192.168.217.2";// redis数据库的ip地址 int port = 6379;// redis数据库的监听端口 Jedis jedis = new Jedis(hostId, port);// 构建一个jedis对象 类似于jdbc中的statement jedis.auth("xuelianbo");// 进行登录授权 jedis.set("name", "bobo");// 简单的set String string = jedis.get("name");// 简单的get方法 System.out.println(string); jedis.quit();// 退出数据库 }
- 对string的操作常用方法
/** * 操作字符串 */ String name = jedis.get("name"); System.out.println(name); Long del = jedis.del("name"); System.out.println(del); String string = jedis.get("name"); System.out.println(string); String mset = jedis.mset("k1", "v1", "k2", "v2"); System.out.println(mset);// 返回OK List<String> mget = jedis.mget("k1", "k2"); for (String string2 : mget) { System.out.println(string2); }
- 对hash的操作方法
/*** * 操作hash */ jedis.hset("h1", "name", "xuelianbo");// 向hash中加入值 jedis.hset("h1", "age", "11"); jedis.hset("h1", "sex", "男"); String hget = jedis.hget("h1", "name");// 获得值 System.out.println(hget); Map<String, String> hgetAll = jedis.hgetAll("h1");// 获得键下的全部属性 Set<String> keySet = hgetAll.keySet(); for (String key : keySet) { System.out.println(key + ":" + hgetAll.get(key)); } Boolean hexists = jedis.hexists("h1", "name");// 判断是否存在 System.out.println(hexists);
- 对list的操作方法
/*** * 操作list */ // lpush jedis.lpush("L1", "小明");// 列表中添加数据 jedis.lpush("L1", "小强");// 列表中添加数据 jedis.lpush("L1", "小王");// 列表中添加数据 jedis.lpush("L1", "小刚");// 列表中添加数据 List<String> lrange = jedis.lrange("L1", 0, -1); for (String one : lrange) { System.out.println(one); } // lset jedis.lset("L1", 2, "2"); // 弹出元素 System.out.println(jedis.llen("L1"));// 显示大小 jedis.lpop("L1"); jedis.lpop("L1"); jedis.lpop("L1"); jedis.lpop("L1"); jedis.lpop("L1"); jedis.lpop("L1"); System.out.println(jedis.llen("L1"));
- 对全局key的操作
/*** * keys操作,也就是全局的一些操作 */ Set<String> keys = jedis.keys("*");// 显示符合pattern的key for (String key : keys) { System.out.println(key + ":" + jedis.type(key));// type 是查看key的类型 } Boolean exists = jedis.exists("K1");// 是否存在某个key System.out.println(exists);
- 事务的支持写法
static { String hostId = "192.168.217.2"; int port = 6379; Jedis jedis = new Jedis(hostId, port); jedis.auth("xuelianbo"); Transaction multi = jedis.multi();// 打开事务 jedis.set("name", "bobo"); multi.exec();// 提交事务 不支持回滚 String string = jedis.get("name"); System.out.println(string); jedis.quit();
}
未完待续!!!
- 之前操作数据库我们是用redis-cli来实现的,实际应用中不可能这么使用。实际应用中我们讲和一种开发语言进行搭配使用,
- 从reidis的官网可知它支持如下的语言 :C 、C++、java、C#、等主流语言。下面我们就学习一下如何通过java来操作redis数据库。
- 从官网上下载一下jedis的压缩包,目前已经不提供jar的下载,下载后需要大家自己用maven进行编译生成一个jar,本文提供该jar的下载。
- 引入jar文件,与引入其他的三方jar的方式无异。下面是代码,里面都有注视:
public static void main(String[] args) throws InterruptedException { String hostId = "192.168.217.2";// redis数据库的ip地址 int port = 6379;// redis数据库的监听端口 Jedis jedis = new Jedis(hostId, port);// 构建一个jedis对象 类似于jdbc中的statement jedis.auth("xuelianbo");// 进行登录授权 jedis.set("name", "bobo");// 简单的set String string = jedis.get("name");// 简单的get方法 System.out.println(string); jedis.quit();// 退出数据库 }
- 对string的操作常用方法