java对于Redis中jedis的操作
package com.answer.redis; import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set; import redis.clients.jedis.Jedis; public class RedisTool { Jedis jedis = null; public RedisTool(boolean flag) {
//连接REDIS数据库
jedis = new Jedis("hadoop1");
//密码认证
if (flag) {
jedis.auth("123456");
}
} /**
* @describe 判断key是否存在
* */
public boolean exists(String key){
return jedis.exists(key);
} /**
* @describe 往REDIS数据库中添加信息(数组形式)
* */
public void lpush_arr(String key, String[] values) {
jedis.lpush(key, values);
} /**
* @describe 返回key的类型
* */
public Object type(String key) {
return jedis.type(key);
} /**
* @describe 随机返回一个key
* */
public Object randomKey() {
return jedis.randomKey();
} /**
* @describe 返回数据库中key的数目
* */
public long dbSize() {
return jedis.dbSize();
} /**
* @describe 设置一个可以的存活时间
* @param seconds 存活时间
* */
public void expire(String key, int seconds) {
jedis.expire(key, seconds);
} /**
* @describe 获取一个key的剩余存活时间
* */
public long ttl(String key) {
return jedis.ttl(key);
} /**
* @describe 删除key及对应的filed-value
* @param key
* */
public void del(String key) {
jedis.del(key);
} /*
* ############################### String ###############################
* */ /**
* @describe 获取key所对应的值(String)
* */
public String get_str(String key) {
return jedis.get(key);
} /**
* @describe 向REDIS存放一组key-value(String)
* */
public void set_str(String key, String value) {
jedis.set(key, value);
} /**
* @describe 在key对应的值后追加value(String)
* */
public void append_str(String key, String value) {
jedis.append(key, value);
} /**
* @describe 给key值所对应的value加1,前提value值是数字(String)
* */
public void incr_str(String key) {
jedis.incr(key);
} /**
* @describe 给key值所对应的value减1,前提value值是数字(String)
* */
public void decr_str(String key) {
jedis.decr(key);
} /**
* @describe 给key值所对应的value加上NUM(String)
* @param num 要加去的数
* */
public void incrBy_str(String key, long num) {
jedis.incrBy(key, num);
} /**
* @describe 给key值所对应的value减去NUM(String)
* @param num 要减去的数
* */
public void decrBy_str(String key, long num) {
jedis.decrBy(key, num);
} /**
* @describe 截取key所对应的value的字符串(String)
* @param start start从0开始
* @param end 截取到value的end位置
* */
public String substr_str(String key, int start, int end) {
return jedis.substr(key, start, end);
} /*
* ############################### List ###############################
* */ /**
* @describe 在key对应的list尾添加value(List)
* */
public void rpush_list(String key, String[] value) {
jedis.rpush(key, value);
} /**
* @describe 在key对应的list头添加value(List)
* */
public void lpush_list(String key, String[] value) {
jedis.lpush(key, value);
} /**
* @describe 获取key对应的list的长度(List)
* @return 返回key对应的list的长度
* */
public long llen_list(String key) {
return jedis.llen(key);
} /**
* @describe 返回key对应的list中从start至end的元素(List)
* @param start 附:start从0开始算起
* @return 返回key对应的list中从start至end的元素
* */
public List<String> lrange_list(String key, int start, int end) {
return jedis.lrange(key, start, end);
} /**
* @describe 获取key所对应的list的第index个元素(List)
* @param index 附:index从0开始算起
* @return 返回key所对应的list的第index个元素
* */
public String lindex_list(String key, int index) {
return jedis.lindex(key, index);
} /**
* @describe 给key所对应的list的第index元素赋值(List)
* @param index 附:index从0开始算起且index的取值在list的长度范围之内
* */
public void lset_list(String key, int index, String value) {
jedis.lset(key, index, value);
} /**
* @describe 删除key对应的list的首元素并返回该元素(List)
* @return 返回被删除的元素
* */
public String lpop_list(String key) {
return jedis.lpop(key);
} /**
* @describe 删除key对应的list的尾元素并返回该元素(List)
* @return 返回被删除的元素
* */
public String rpop_list(String key) {
return jedis.rpop(key);
} /*
* ############################### Set ###############################
* */ /**
* @describe 往REDIS中存放数据(Set)
* @return 返回存放的元素个数
* */
public long sadd_set(String key, String[] elements) {
return jedis.sadd(key, elements);
} /**
* @describe 删除key对应的value中的elements元素(Set)
* @return 返回删除的元素个数
* */
public long srem_set(String key, String[] elements) {
return jedis.srem(key, elements);
} /**
* @describe 获取key对应的value的元素个数(Set)
* @return 返回key对应的value的元素个数
* */
public long scard_set(String key) {
return jedis.scard(key);
} /**
* @describe element是否是key对应的value中的元素(Set)
* @return true|false
* */
public boolean sismember_set(String key, String element) {
return jedis.sismember(key, element);
} /**
* @describe 获取多个key即keys的交集(Set)
* @return 返回keys的交集
* */
public Set<String> sinter_set(String[] keys) {
return jedis.sinter(keys);
} /*
* ############################### Hash ###############################
* */ /**
* @describe 向名称为key的hash中添加filed,其field与value是一对键值对(Hash)
* */
public void hset_hash(String key, String field, String value) {
jedis.hset(key, field, value);
} /**
* @describe 获取key下的hash中filed所对应的value值(Hash)
* @return value
* */
public String hget_hash(String key, String field) {
return jedis.hget(key, field);
} /**
* @describe 获取key下的hash中filed所对应的value值(多个field,因此返回List结果集)(Hash)
* @return value
* */
public List<String> hmget_hash(String key, String[] fields) {
return jedis.hmget(key, fields);
} /**
* @describe 往key中存储一个map对象(Hash)
* @return OK
* */
public String hmset_hash(String key, Map<String, String> hash) {
return jedis.hmset(key, hash);
} /**
* @describe 名称为key的hash中是否存在键为field的域(Hash)
* @return true false
* */
public boolean hexists_hash(String key, String field) {
return jedis.hexists(key, field);
} /**
* @describe 删除名称为key的hash中键为field的域(Hash)
* @return 返回删除的个数
* */
public long hdel_hash(String key, String[] fields) {
return jedis.hdel(key, fields);
} /**
* @describe 返回名称为key的hash中元素个数(Hash)
* @return 返回key对应的hash的元素个数
* */
public long hlen_hash(String key) {
return jedis.hlen(key);
} /**
* @describe 返回名称为key的hash中所有键即field(Hash)
* @return 返回Set结果集
* */
public Set<String> hkeys_hash(String key) {
return jedis.hkeys(key);
} /**
* @describe 返回名称为key的hash中所有键对应的value(Hash)
* @return 返回List结果集
* */
public List<String> hkeys_hvals(String key) {
return jedis.hvals(key);
} /**
* @describe 返回名称为key的hash中所有的键(field)及其对应的value(Hash)
* @return 返回Map结果集
* */
public Map<String, String> hgetall_hash(String key) {
return jedis.hgetAll(key);
} /**
* @describe 自定义引用JEDIS内置方法
* @category 由于有些方法不是很常用,所以定义此方法,方便调用其他本类未定义方法
* */
public Jedis getJedis() {
return jedis;
}
}
芸芸众生,我只是一个码农,我正在努力的一步一个台阶。。。
改编至:http://www.cnblogs.com/edisonfeng/p/3571870.html
java对于Redis中jedis的操作的更多相关文章
- Redis中的持久化操作
本篇博客主要来解说一下怎样Redis中的持久化操作,当然了不是一篇理论性的博客,主要还是分享一下在redis中怎样来配置持久化操作. 1.介绍 redis为了内部数据的安全考虑,会把本身的数 ...
- Java 从 Redis中取出的Json字符串 带斜杠的问题解决方案
Java 从 Redis中取出的Json字符串 带斜杠的问题: { "code": 200, "message": "成功", " ...
- java连接redis中的数据查、增、改、删操作的方法
package com.lml.redis; import java.util.HashMap;import java.util.Iterator;import java.util.Map;impor ...
- Redis学习存档(2)——通过Java使用Redis:Jedis
一.创建项目,引入jedis jar包 可在百度搜索maven repository 进入后搜索jedis,复制依赖包到pom.xml文件中 <project xmlns="http: ...
- Java连接redis之Jedis使用
测试联通 创建Maven工程,引入依赖 <dependency> <groupId>redis.clients</groupId> <artifactId&g ...
- java连接Redis初始化jedis失败!
Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstant ...
- java连接redis使用jedis带密码
一.引入jedis的Maven配置文件 <!-- redis连接客户端jedis --> <dependency> <groupId>redis.clients&l ...
- java 向Redis中存放数据 List<Device>转String
/** * redis服务 */ @Autowired private RedisService redisService; //创建 Device 对象 Device no = new Devic ...
- redis中使用 check-and-set 操作实现乐观锁
WATCH 命令可以为 Redis 事务提供 check-and-set (CAS)行为. 被 WATCH 的键会被监视,并会发觉这些键是否被改动过了. 如果有至少一个被监视的键在 EXEC 执行之前 ...
随机推荐
- Windows pycharm Terminal使用Anaconda 的Prompt
从Stack Overflow上找到的方法如下 在Settings->Terminal->Shell path 改成:cmd.exe "/K" "C:\Use ...
- 如何查看Windows下端口占用情况
开始---->运行---->cmd,或者是window+R组合键,调出命令窗口 输入命令:netstat -ano,列出所有端口的情况.在列表中我们观察被占用的端口,比如是49157,首 ...
- C#处理List<object>重复数据的问题
private class ListDistinct : IEqualityComparer<object> { public bool Equals(object x, object y ...
- DQL-排序查询
三:排序查询 语法: select 列名 from 表名 where 筛选条件 order by 需要排序的列名 asc/desc 特点:不写升序还是降序,默认升序 排序列表 可以是 ...
- ORCLE10安装常见配置问题-oui.exe停止工作
其实这是一个在安装过程中很常见的问题,之前小编说过关于甲骨文的软件用起来都很强大,但是大腕出厂,出场费是很高的,就像甲骨文的软件使用的话对于他的安装和配置的换将也是很挑剔的,出现这个问题就是因为安装文 ...
- tomcat如何配置俩个版本
Java-web除了JDK,还需配置服务器(tomcat); 如何配置俩个版本的tomcat; 1.将tomcat-bin目录下的startup.bat和catalina.bat里的%CATALINA ...
- linux 安装 node 环境
本篇学习的分享主要说在linux 安装 node 环境,个人也是在腾讯云的实验室课程学习的,这里只是个人的一个学习记录, 大家也可以去腾讯的实验室来体验一下,教程十分详细易学. 1 .安装 Node. ...
- Systemd简介与使用
按下电源键,随着风扇转动的声音,显示器上开启的图标亮起.之后,只需要静静等待几秒钟,登录界面显示,输入密码,即可愉快的玩耍了. 这是我们大概每天都做的事情.那么中间到底发生了什么? 简单地说,从BIO ...
- 【读书笔记 - Effective Java】05. 避免创建不必要的对象
1. 如果对象是不可变的(immutable),它就始终可以被重用. (1) 特别是String类型的对象. String str1 = new String("str"); // ...
- es6 Reflect对象详解
Reflect是ES6为操作对象而提供的新API,而这个API设计的目的只要有: 将Object对象的一些属于语言内部的方法放到Reflect对象上,从Reflect上能拿到语言内部的方法.如:Obj ...