中文社区:http://redis.cn/

package com.zzstxx.redis;import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;public class RedisUtil {// Redis服务器IPprivate static String ADDR = "192.168.0.69";// Redis的端口号private static int PORT = 6379;// 访问密码private static String AUTH = "zzstxxjs";// 可用连接实例的最大数目,默认值为8;// 如果赋值为-1,则表示不限制;如果pool已经分配了maxActive个jedis实例,则此时pool的状态为exhausted(耗尽)。private static int MAX_ACTIVE = 1024;// 控制一个pool最多有多少个状态为idle(空闲的)的jedis实例,默认值也是8。private static int MAX_IDLE = 200;// 等待可用连接的最大时间,单位毫秒,默认值为-1,表示永不超时。如果超过等待时间,则直接抛出JedisConnectionException;private static int MAX_WAIT = 10000;private static int TIMEOUT = 10000;// 在borrow一个jedis实例时,是否提前进行validate操作;如果为true,则得到的jedis实例均是可用的;private static boolean TEST_ON_BORROW = true;private static JedisPool jedisPool = null;/*** 初始化Redis连接池*/static {try {JedisPoolConfig config = new JedisPoolConfig();config.setMaxActive(MAX_ACTIVE);config.setMaxIdle(MAX_IDLE);config.setMaxWait(MAX_WAIT);config.setTestOnBorrow(TEST_ON_BORROW);jedisPool = new JedisPool(config, ADDR, PORT, TIMEOUT, AUTH);} catch (Exception e) {e.printStackTrace();}}/*** 获取Jedis实例* * @return*/public synchronized static Jedis getJedis() {try {if (jedisPool != null) {Jedis resource = jedisPool.getResource();return resource;} else {return null;}} catch (Exception e) {e.printStackTrace();return null;}}/*** 释放jedis资源* * @param jedis*/public static void returnResource(final Jedis jedis) {if (jedis != null) {jedisPool.returnResource(jedis);}}
}
package com.zzstxx.redis;import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.Jedis;public class TestRedis {private Jedis jedis;@Beforepublic void setup() {// 连接redis服务器,192.168.0.100:6379jedis = new Jedis("192.168.0.69", 6379);// 权限认证jedis.auth("zzstxxjs");}/*** redis存储字符串*/public void testString() {// -----添加数据----------jedis.set("name", "xinxin");// 向key-->name中放入了value-->xinxinSystem.out.println(jedis.get("name"));// 执行结果:xinxinjedis.append("name", " is my lover"); // 拼接System.out.println(jedis.get("name"));jedis.del("name"); // 删除某个键System.out.println(jedis.get("name"));// 设置多个键值对jedis.mset("name", "liuling", "age", "23", "qq", "476777XXX");jedis.incr("age"); // 进行加1操作System.out.println(jedis.get("name") + "-" + jedis.get("age") + "-"+ jedis.get("qq"));}/*** redis操作Map*/public void testMap() {// -----添加数据----------Map<String, String> map = new HashMap<String, String>();map.put("name", "xinxin");map.put("age", "22");map.put("qq", "123456");jedis.hmset("user", map);// 取出user中的name,执行结果:[minxr]-->注意结果是一个泛型的List// 第一个参数是存入redis中map对象的key,后面跟的是放入map中的对象的key,后面的key可以跟多个,是可变参数List<String> rsmap = jedis.hmget("user", "name", "age", "qq");System.out.println(rsmap);// 删除map中的某个键值jedis.hdel("user", "age");System.out.println(jedis.hmget("user", "age")); // 因为删除了,所以返回的是nullSystem.out.println(jedis.hlen("user")); // 返回key为user的键中存放的值的个数2System.out.println(jedis.exists("user"));// 是否存在key为user的记录 返回trueSystem.out.println(jedis.hkeys("user"));// 返回map对象中的所有keySystem.out.println(jedis.hvals("user"));// 返回map对象中的所有valueIterator<String> iter = jedis.hkeys("user").iterator();while (iter.hasNext()) {String key = iter.next();System.out.println(key + ":" + jedis.hmget("user", key));}}/*** jedis操作List*/public void testList() {// 开始前,先移除所有的内容jedis.del("java framework");System.out.println(jedis.lrange("java framework", 0, -1));// 先向key java framework中存放三条数据jedis.lpush("java framework", "spring");jedis.lpush("java framework", "struts");jedis.lpush("java framework", "hibernate");// 再取出所有数据jedis.lrange是按范围取出,// 第一个是key,第二个是起始位置,第三个是结束位置,jedis.llen获取长度 -1表示取得所有System.out.println(jedis.lrange("java framework", 0, -1));jedis.del("java framework");jedis.rpush("java framework", "spring");jedis.rpush("java framework", "struts");jedis.rpush("java framework", "hibernate");System.out.println(jedis.lrange("java framework", 0, -1));}/*** jedis操作Set*/public void testSet() {// 添加jedis.sadd("user", "liuling");jedis.sadd("user", "xinxin");jedis.sadd("user", "ling");jedis.sadd("user", "zhangxinxin");jedis.sadd("user", "who");// 移除nonamejedis.srem("user", "who");System.out.println(jedis.smembers("user"));// 获取所有加入的valueSystem.out.println(jedis.sismember("user", "who"));// 判断 who// 是否是user集合的元素System.out.println(jedis.srandmember("user"));System.out.println(jedis.scard("user"));// 返回集合的元素个数}public void test() throws InterruptedException {// jedis 排序// 注意,此处的rpush和lpush是List的操作。是一个双向链表(但从表现来看的)jedis.del("a");// 先清除数据,再加入数据进行测试jedis.rpush("a", "1");jedis.lpush("a", "6");jedis.lpush("a", "3");jedis.lpush("a", "9");System.out.println(jedis.lrange("a", 0, -1));// [9, 3, 6, 1]System.out.println(jedis.sort("a")); // [1, 3, 6, 9] //输入排序后结果System.out.println(jedis.lrange("a", 0, -1));}@Testpublic void testRedisPool() {RedisUtil.getJedis().set("newname", "中文测试");System.out.println(RedisUtil.getJedis().get("newname"));}
}

redis 之Jredis配置相关推荐

  1. redis cluster 安装配置

    一.redis集群安装配置 1.下载redis源码包并下载 wget http://download.redis.io/releases/redis-3.0.7.tar.gz $ tar xzf re ...

  2. ubunut离线redis配置_ubuntu安装redis及简单配置

    1.官方下载redis. redis-4.0.10.tar.gz 2.上传到服务器,找到上传文件,进行解压 #tar zxvf redis-4.0.10.tar.gz #cd /apache/redi ...

  3. 浅谈Redis及其安装配置

    一.Redis的介绍 二.Redis的安装配置 三.Redis的配置文件说明 四.Redis的简单操作 简介: Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型. ...

  4. linux redis数据库安装配置,Linux系统中redis的安装配置步骤

    Linux系统中redis的安装配置步骤 发布时间:2020-06-23 10:13:36 来源:亿速云 阅读:87 作者:Leah 这篇文章将为大家详细讲解有关Linux系统中redis的安装配置步 ...

  5. Redis集群配置和常见异常解决

    Redis集群配置和常见异常解决 参考文章: (1)Redis集群配置和常见异常解决 (2)https://www.cnblogs.com/hzb462606/p/11121281.html 备忘一下 ...

  6. C# Azure 存储-分布式缓存Redis的新建配置查看

    C# Azure 存储-分布式缓存Redis的新建&配置&查看 1. 介绍 Redis 是一款开源的,基于 BSD 许可的,高级键值 (key-value) 缓存 (cache) 和存 ...

  7. 分布式内存数据库---redis配置文件常用配置介绍

    想要熟练使用redis,那么redis的相关配置也要非常熟悉,在大数据开发中使用redis就常常需要修改redis的常见配置. 一. redis的单位 redis的数据单位跟常用的单位有点不一样,打开 ...

  8. Redis安装与配置( Windows10 )

    Redis安装与配置( Windows10 ) 2018-09-22 17:54:21 gcl_air 阅读数 13357更多 分类专栏: redis 版权声明:本文为博主原创文章,遵循 CC 4.0 ...

  9. Redis 安装与配置

    Redis 安装与配置 Window 下安装 下载地址:https://github.com/MSOpenTech/redis/releases. 这里我们下载 Redis-x64-xxx.zip 解 ...

最新文章

  1. [JAVAEE] Thymeleaf 基本语法: form相关标签
  2. ACC026简要题解
  3. 北科院分子互作实战专题培训班(10月底/11月底班)(生物医药与营养健康协同创新中心)...
  4. Apache Solr入门教程(初学者之旅)
  5. 在centos6.5上安装mongodb数据库
  6. 【Android-tips】 Unable to execute dex: Multiple dex files define 解决方法
  7. BZOJ 2751 容易题
  8. android 内部拦截,如何使用proxy,如何在内部拦截get方法
  9. 隐藏Android下的虚拟按键
  10. Python实现输入电影名字自动生成豆瓣评论词云图(带GUI界面)小程序
  11. jroo,已开源,一个java web快速开发工具
  12. Cocos2dx 3.0 过渡篇(二十六)C++11多线程std::thread的简单使用(上)
  13. 宝塔实测-电商ERP进销存系统源码
  14. python桌面程序自动化教程_桌面应用自动化python
  15. 华为事件对我们个人成功的启示:为什么自强自立不是出路?
  16. java的程序的创建快捷方式_关于Swing:如何为Java程序创建快捷方式图标
  17. SpringMvc下载文件损坏
  18. 【时间序列预测算法】——Holt-Winters算法介绍及代码实现
  19. Mac电脑使用:您的安全性偏好设置仅允许安装来自App Store和被认可的开发者的应用(解决方法)
  20. 微信分享功能踩坑过程

热门文章

  1. 【002】回归之高级优化“BFGS”
  2. 用友网络王文京:数字化转型成为必由之路 | 工程院院士李德毅:争取2030年农村普及无人拖拉机
  3. Uefi hexedit 源码分析
  4. 微信小程序收集formId
  5. jQuery - 实现设置指定列给动态表格的行生成自动序号
  6. 2020低压电工考试题库及低压电工作业考试题库
  7. 微信朋友圈广告如何投放?
  8. 星星表情符号的html代码,表情符号emojiUTF-8编码、Unicode、HTML显示
  9. 数组push时 覆盖的问题
  10. c语言删除链表中特定元素,单链表的删除某个元素的操作