java redis学习记录
1.下载 链接:https://pan.baidu.com/s/1cgsPYD8KL25-eeBfRgBQGw 密码:a8uq
2.解压下载的压缩文件
3.启动
打开cmd窗口,切换目录到redis,执行redis-server.exe redis.windows.conf
4.测试
另打开一个cmd窗口,原来的不要关闭,不然就无法访问服务端了,切换目录到redis
连接服务 redis-cli.exe -h 127.0.0.1 -p 6379
设置键值对 set myKey abc
取出键值对 get myKey
推出 quit
5.退出
在3中的cmd窗口,ctrl+c退出
6.Java使用redis
jar包
package test;import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Set;import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.JedisShardInfo;
import redis.clients.jedis.ShardedJedis;
import redis.clients.jedis.ShardedJedisPool;
import redis.clients.jedis.SortingParams;public class RedisTest {private Jedis jedis;//非切片额客户端连接private JedisPool jedisPool;//非切片连接池private ShardedJedis shardedJedis;//切片额客户端连接private ShardedJedisPool shardedJedisPool;//切片连接池public RedisTest() { initialPool(); initialShardedPool(); shardedJedis = shardedJedisPool.getResource(); jedis = jedisPool.getResource(); } /*** 初始化非切片池*/private void initialPool() { // 池基本配置 JedisPoolConfig config = new JedisPoolConfig(); //config.setMaxActive(20); 旧版本config.setMaxTotal(20);config.setMaxIdle(5); //config.setMaxWait(1000l); 旧版本config.setMaxWaitMillis(1000l);config.setTestOnBorrow(false); jedisPool = new JedisPool(config,"127.0.0.1",6379);}/** * 初始化切片池 */ private void initialShardedPool() { // 池基本配置 JedisPoolConfig config = new JedisPoolConfig(); //config.setMaxActive(20); 旧版本config.setMaxTotal(20);config.setMaxIdle(5); //config.setMaxWait(1000l); 旧版本config.setMaxWaitMillis(1000l);config.setTestOnBorrow(false); // slave链接 List<JedisShardInfo> shards = new ArrayList<JedisShardInfo>(); shards.add(new JedisShardInfo("127.0.0.1", 6379, "master")); // 构造池 shardedJedisPool = new ShardedJedisPool(config, shards); }public void show() { KeyOperate(); StringOperate(); ListOperate(); SetOperate();SortedSetOperate();HashOperate(); //jedisPool.returnResource(jedis);//shardedJedisPool.returnResource(shardedJedis);}
}
初始化redis,这里有2个小问题
config.setMaxActive(20);
config.setMaxWait(1000l);
这两句在Jedis版本较高的JedisPoolConfig中没有setMaxActive和setMaxWait属性了,这是因为高版本中官方废弃了此方法,用以下两个属性替换。
maxActive ==> maxTotal
maxWait ==> maxWaitMillis
//jedisPool.returnResource(jedis);
//shardedJedisPool.returnResource(shardedJedis);
returnResource在高版本遭废弃,使用close
加下来简单测试
private void KeyOperate() { System.out.println("======================key=========================="); // 清空数据 System.out.println("清空库中所有数据:"+jedis.flushDB());// 判断key否存在 System.out.println("判断key999键是否存在:"+shardedJedis.exists("key999")); System.out.println("新增key001,value001键值对:"+shardedJedis.set("key001", "value001")); System.out.println("判断key001是否存在:"+shardedJedis.exists("key001"));// 输出系统中所有的keySystem.out.println("新增key002,value002键值对:"+shardedJedis.set("key002", "value002"));System.out.println("系统中所有键如下:");Set<String> keys = jedis.keys("*"); Iterator<String> it=keys.iterator() ; while(it.hasNext()){ String key = it.next(); System.out.println(key); }// 删除某个key,若key不存在,则忽略该命令。System.out.println("系统中删除key002: "+jedis.del("key002"));System.out.println("判断key002是否存在:"+shardedJedis.exists("key002"));// 设置 key001的过期时间System.out.println("设置 key001的过期时间为5秒:"+jedis.expire("key001", 5));try{ Thread.sleep(2000); } catch (InterruptedException e){ } // 查看某个key的剩余生存时间,单位【秒】.永久生存或者不存在的都返回-1System.out.println("查看key001的剩余生存时间:"+jedis.ttl("key001"));// 移除某个key的生存时间System.out.println("移除key001的生存时间:"+jedis.persist("key001"));System.out.println("查看key001的剩余生存时间:"+jedis.ttl("key001"));// 查看key所储存的值的类型System.out.println("查看key所储存的值的类型:"+jedis.type("key001"));/** 一些其他方法:1、修改键名:jedis.rename("key6", "key0");* 2、将当前db的key移动到给定的db当中:jedis.move("foo", 1)*/}
public static void main(String[] args) {RedisTest redis = new RedisTest();redis.KeyOperate();redis.jedis.close();redis.shardedJedis.close();}
使用完注意close
参考:https://www.cnblogs.com/edisonfeng/p/3571870.html
https://blog.csdn.net/sukexiaozi/article/details/52022449
https://blog.csdn.net/eff666/article/details/52998890
java redis学习记录相关推荐
- Java设计模式学习记录-解释器模式
前言 这次介绍另一个行为模式,解释器模式,都说解释器模式用的少,其实只是我们在日常的开发中用的少,但是一些开源框架中还是能见到它的影子,例如:spring的spEL表达式在解析时就用到了解释器模式,以 ...
- 狂神Redis学习记录 完整版
[狂神说Java]Redis最新超详细版教程通俗易懂_哔哩哔哩_bilibili笔记资料交流都在我们的平台:www.kuangstudy.com秦疆老师Java全栈系列课程之Redis讲解从Nosql ...
- Java设计模式学习记录-单例模式
前言 已经介绍和学习了两个创建型模式了,今天来学习一下另一个非常常见的创建型模式,单例模式. 单例模式也被称为单件模式(或单体模式),主要作用是控制某个类型的实例数量是一个,而且只有一个. 单例模式 ...
- Java SE 学习记录06
@学习记录 开始学习Java 遵从同学的指导,从Java se开始学习 黑马的JavaSE零基础入门 day06-01 面向对象 package day06;import java.util.Arra ...
- Java SE 学习记录——进阶版11
@学习记录 开始学习Java 遵从同学的指导,从Java se开始学习 黑马的JavaSE零基础入门[网络编程] 第一章 网络编程入门 1.1 软件结构 22-02 软件结构 1.2 网络通信协议 2 ...
- Java注解学习记录(反射也能实现ButterKnife)
文章目录 什么是注解(Annotation) 注解有什么用 注解怎么用 注解关键字 @interface 注解属性的数据类型 元注解 @Retention @Target @Documented @I ...
- Redis学习记录之Java中的初步使用
[html] view plain copy redis下载地址:<span style="font-family: Arial, Helvetica, sans-serif;&qu ...
- 2023年5月19日Redis学习记录(笔记md文档非本人亲自编写,仅作为个人学习记录,无其他目的)
Redis快速入门 Redis的常见命令和客户端使用 1.初识Redis Redis是一种键值型的NoSql数据库,这里有两个关键字: 键值型 NoSql 其中键值型,是指Redis中存储的数据都是以 ...
- Redis学习记录(一)
Redis是什么 redis是一个开源的.使用C语言编写的.支持网络交互的.可基于内存也可持久化的Key-Value数据库.Redis像是一个HashMap,不过不是在JVM中运行,而是以一个独立进程 ...
- java之学习记录 5 - 1 - 模拟拉勾项目介绍与后台系统搭建
项目架构(此文章只供个人学习的记录) 1 项目介绍 拉勾教育后台管理系统,是提供给拉勾教育的相关业务人员使用的一个后台管理系统, 业务人员可以在这个后台管理系统中,对课程信息.讲师信息. 学员信息等数 ...
最新文章
- python 如何封装dll_如何为DLL库创建Python包装器
- 用java程序将GBK字符转成UTF-8编码格式(转)
- Linux下的图形界面编程
- Github项目|几行代码即可实现人脸检测、目标检测的开源计算机视觉库
- HDU - 6183 Color it 2017广西邀请赛(线段树)
- 计算机编程课程顺序_九月份可以开始提供650多种免费的在线编程和计算机科学课程
- java迷宫_java实现迷宫算法--转
- Error in mounted hook: “TypeError: Cannot read property ‘init‘ of undefined“
- Ubuntu下备份系统的方法
- java高级工程师 考试_JAVA高级工程师笔试题及答案
- JDK6中synchronized优化之自旋锁、锁擦除、锁粗化
- java 删除文件或文件夹的7种方法(io基础)
- “从0开始的FreeRTOS”系列教程第一讲
- 数据库MySQL详解(入门学习)
- win7蓝牙热点自动断开
- 【Linux】Ubuntu使用FlashFXP(FTP客户端)
- BSN智能合约开发培训-CITA(三)
- Web导出Excel总结
- 使用TkMybatis逆向生成带中文注释文件,并使用其常用的方法
- 逻辑移位和算术移位的区别