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的操作的更多相关文章

  1. Redis中的持久化操作

       本篇博客主要来解说一下怎样Redis中的持久化操作,当然了不是一篇理论性的博客,主要还是分享一下在redis中怎样来配置持久化操作.  1.介绍  redis为了内部数据的安全考虑,会把本身的数 ...

  2. Java 从 Redis中取出的Json字符串 带斜杠的问题解决方案

    Java 从 Redis中取出的Json字符串 带斜杠的问题: { "code": 200, "message": "成功", " ...

  3. java连接redis中的数据查、增、改、删操作的方法

    package com.lml.redis; import java.util.HashMap;import java.util.Iterator;import java.util.Map;impor ...

  4. Redis学习存档(2)——通过Java使用Redis:Jedis

    一.创建项目,引入jedis jar包 可在百度搜索maven repository 进入后搜索jedis,复制依赖包到pom.xml文件中 <project xmlns="http: ...

  5. Java连接redis之Jedis使用

    测试联通 创建Maven工程,引入依赖 <dependency> <groupId>redis.clients</groupId> <artifactId&g ...

  6. java连接Redis初始化jedis失败!

    Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstant ...

  7. java连接redis使用jedis带密码

    一.引入jedis的Maven配置文件 <!-- redis连接客户端jedis --> <dependency> <groupId>redis.clients&l ...

  8. java 向Redis中存放数据 List<Device>转String

    /** * redis服务 */ @Autowired private RedisService redisService; //创建 Device  对象 Device no = new Devic ...

  9. redis中使用 check-and-set 操作实现乐观锁

    WATCH 命令可以为 Redis 事务提供 check-and-set (CAS)行为. 被 WATCH 的键会被监视,并会发觉这些键是否被改动过了. 如果有至少一个被监视的键在 EXEC 执行之前 ...

随机推荐

  1. PHP------文件------文件整体操作

    文件整体操作 [1]创建文件 touch("路径");   touch("./test.docx");//当前路径创建文件,创建的文档 显示的结果: touch ...

  2. HDU 1006 Tick and Tick(时钟,分钟,秒钟角度问题)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1006 Tick and Tick Time Limit: 2000/1000 MS (Java/Oth ...

  3. Xcode7解决VVDocumenter 不能使用的方案

    Xcode7解决VVDocumenter 不能使用的方案 VVDocumenter-Xcode是Xcode上一款快速添加标准注释,并可以自动生成文档的插件.有了VVDocumenter-Xcode,规 ...

  4. 微信小程序,搜索结果关键词高亮 wxml不能动态识别html标签

    wxml中使用rich-text标签放置动态html标签 js:

  5. HTML5视频播放插件 video.js介绍

    video.js是一款很流行的html5视频播放插件.很适合在移动端播放视频(比如微信网页),功能强大,且支持降级到flash,兼容ie8.官网:http://videojs.com/    git& ...

  6. Nlog日志出坑合集

    .net core框架下nlog不记录: 1.安装NLog.Web.AspNetCore 2.在Startup.cs文件的方法public void Configure(IApplicationBui ...

  7. #leetcode刷题之路15-三数之和

    给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组. 注意:答案中不可以包含重复的三元组. ...

  8. 创建在类路径资源[applicationcontext]中定义名为“工厂”的bean时出错。:在设置bean属性“dataSource”时,无法解析对bean“dataSource”的引用;嵌套异常是org.springframe .beans.factory。BeanCreationException:创建名为“数据源”的bean时出错,该名称是在类路径资源[applicationcontext

    控制台报错: 创建在类路径资源[applicationcontext]中定义名为“工厂”的bean时出错.:在设置bean属性“dataSource”时,无法解析对bean“dataSource”的引 ...

  9. 本人擅长Ai、Fw、Fl、Br、Ae、Pr、Id、Ps等

    本人擅长Ai.Fw.Fl.Br.Ae.Pr.Id.Ps等软件的安装与卸载,精通CSS.JavaScript.PHP.ASP.C.C++.C#.Java.Ruby.Perl.Lisp.python.Ob ...

  10. Delphi 拦截滚轮事件不响应滚轮的上下滚动

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...