jedis中的方法名,和Redis的命令几乎一样

1.jar包,作为测试只需要一个jar

2.代码

package com;

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set; import org.junit.Before;
import org.junit.Test; import redis.clients.jedis.Jedis;
import redis.clients.jedis.Pipeline; /**
* 使用jedis连接Redis
*/
public class TestJedis { private Jedis j; /**
* 连接redis
*/
@Before
public void before(){ j = new Jedis("localhost", 6379);
} /**
* 操作String类型
*
*/
@Test
public void test00(){ //添加数据:添加数据时,若key值相同,则value的值会覆盖
j.set("name1", "李四"); //添加数据并设置有效期:第二个参数为有效时间:10秒,超过时间key自动销毁
j.setex("name2", 10, "有效期10秒"); //添加多条数据
j.msetnx("name3", "王五","name4","赵六"); //删除
j.del("name2"); //取数据
System.out.println( j.get("name1") ); //查看key的剩余时间
System.out.println( j.ttl("name3") ); //批量获取key
List<String> mget = j.mget("name1","name3"); for (String string : mget) {
System.out.println(string);
}
} /**
* List类型
*/
@Test
public void test01(){ //清空数据库
j.flushDB(); //向key=name1,添加三条数据
j.lpush("name1", "张三","李四","王五"); //按下标取出数据,0代表第一个元素,-1代表最后一个元素
List<String> list = j.lrange("name1", 0, -1);
for (String string : list) {
System.out.println(string);
} //除了第一个元素,其他全部删除
j.ltrim("name1", 0, 0); } /**
* HashSet
*/
//
@Test
public void test02(){
//清空数据库
j.flushDB(); //添加
j.sadd("name1", "1","2","3"); //查所有
Set<String> smembers = j.smembers("name1");
for (String string : smembers) {
System.out.println(string);
}
} /**
* SortedSet
*/ @Test
public void test3(){
j.del("name1"); //添加分数为1好2的两条数据
j.zadd("name1", 3, "张三");
j.zadd("name1",1,"李四"); //
Set<String> zrange = j.zrange("name1", 0, -1);
for (String string : zrange) {
System.out.println(string); // 输出: 李四,张三
}
} /**
* HashMap
*/
@Test
public void test04(){
j.del("name1");
//添加map源数据
HashMap<String,String> map = new HashMap<String,String>();
map.put("name1", "张三");
map.put("name2", "李四"); //向Redis添加数据
j.hmset("names", map); //查询map中的数据
List<String> hmget = j.hmget("names","name1","name2");
for (String string : hmget) {
System.out.println(string);
}
} /**
* 批量插入
*/
@Test
public void test05(){
//开始时间
long begin = System.currentTimeMillis(); //批量插入
Pipeline pipelined = j.pipelined(); for (int i = 0; i < 100000; i++) { pipelined.set("name"+ i, "value"+i);
}
//释放
pipelined.sync(); //结束时间
long end = System.currentTimeMillis(); System.out.println( ( (end - begin) /1000.0 ) +"秒");
} }

用Jedis连接Redis的更多相关文章

  1. jedis 连接 redis

    一.连接单机版的 redis /** * 直接连接 redis * @throws Exception */ @Test public void test1() throws Exception { ...

  2. 通过jedis连接redis单机成功,使用redis客户端可以连接集群,但使用JedisCluster连接redis集群一直报Could not get a resource from the pool

    一,问题描述: (如题目)通过jedis连接redis单机成功,使用JedisCluster连接redis集群一直报Could not get a resource from the pool 但是使 ...

  3. 关于Jedis连接redis出现问题

    环境说明: redis服务器系统:ubuntu ip 192.168.10.9 port 6379 两台电脑:一个作为专门的服务器,一个是开发环境,以下一顿操作皆基于开发环境. 就这样的简单的代码连接 ...

  4. Java 使用Jedis连接Redis数据库(-)

    redis 安装: Linux 安装redis 1)下载jar包: 使用Jedis需要以下两个jar包: jedis-2.8.0.jar commons-pool2-2.4.2.jar 2)测试red ...

  5. Jedis连接Redis三种模式

    这里说的三种工作模式是指: 1.单机模式 2.分片模式 3.集群模式(since 3.0) 说明图详见以下: 使用单机模式连接: private String addr="192.168.1 ...

  6. Jedis连接redis

    今天与大家分享下,Jedis连接池使用.先看一段JAVA 代码:         JedisPoolConfig config = new JedisPoolConfig();         con ...

  7. Jedis连接redis客户端

    1 单点的redis利用jedis客户端连接 如何连接 //1 利用jedis连接对象操作redis @Test public void test01(){ //构造一个具有连接信息的jedis对象 ...

  8. springboot 使用 jedis 连接 Redis 数据库

    1. 在 pom.xml 配置文件中添加依赖 <!-- redis 依赖 --> <dependency> <groupId>org.springframework ...

  9. 20190928-02使用Redis客户端Jedis连接Redis,以及用Java代码操作Redis 000 030

    启动redis package com.yujie.jedis; import java.util.HashMap; import java.util.Map; import java.util.Se ...

随机推荐

  1. dede:field name='imgurls'不能二次使用的解决办法

    {dede:field name='imgurls' alt='图片输出区'}图片链接  [field:linkurl/]图片地址 [field:imgsrc/]{/dede:field} 这个标签不 ...

  2. Android细笔记--ContentProvider

    Provider的不常见访问方式 Batch access:访问ContentProvider的一中模式,使用该模式可以同时对provider进行多个操作,且支持同时操作多个表.使用时首先构建一个Co ...

  3. RunTime&RunLoop初见

    什么是runtime 1> runtime是一套底层的c语言API(包括很多强大实用的c语言类型,c语言函数); 2>实际上,平时我们编写的oc代码,底层都是基于runtime实现的 也就 ...

  4. IOS 杂笔-17(堆区栈区等)

    栈区(stack):由系统自动分配,一般存放函数参数值.局部变量的值等.由编译器自动创建与释放.其操作方式类似于数据结构中的栈,即后进先出.先进后出的原则. 例如:在函数中申明一个局部变量int b; ...

  5. 使用Project进行项目管理 - 项目管理系列文章

    前面当项目经理的时候曾经用到过Project来进行项目管理.这些天闲着无事,将代码翻出来留念了一下,现在将Project项目管理的东西也翻出来玩玩. 微软的Project是一款不错的软件,经过微软这么 ...

  6. EntityFramework简介

    EntityFramework是什么? 1.是对ADO.NET 更高封装的ORM (对象关系映射)框架,跟Nhibernate类似 2.用面向对象的方式来操作关系数据库 3.目标: 提高开发效率,减轻 ...

  7. 大数据系列(2)——Hadoop集群坏境CentOS安装

    前言 前面我们主要分析了搭建Hadoop集群所需要准备的内容和一些提前规划好的项,本篇我们主要来分析如何安装CentOS操作系统,以及一些基础的设置,闲言少叙,我们进入本篇的正题. 技术准备 VMwa ...

  8. Redis时延问题分析及应对

    Redis时延问题分析及应对 Redis的事件循环在一个线程中处理,作为一个单线程程序,重要的是要保证事件处理的时延短,这样,事件循环中的后续任务才不会阻塞: 当redis的数据量达到一定级别后(比如 ...

  9. Java日志框架:SLF4J,Common-Logging,Log4J,Logback说明

    Log4j  Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件.甚至是套接口服务 器.NT的事件记录器.UNIX Syslog守护进程等 ...

  10. Log4J基础详解及示例大全

    去年这个时候,为做软件工程的大作业就详细学过Log4J的用法了,时隔一年想要在新的项目中好好使用一下的时候,发现几乎全忘了,悲催啊-- 再上网查资料,总是不能找到一篇符合我的口味,拿来就能轻松上手,方 ...