【JAVA】使用 jedis操作redis——连接、存储数据、切库等
本篇运用Java调用jedis包(jedis在线文档API ),做简单操作实例。
安装jedis
1. 2.9.0 jar 版本下载: jedis-2.9.0.jar
2. 新建项目,添加该驱动包
连接到 redis 服务
package com.summer.jedis;
import redis.clients.jedis.Jedis;
public class RedisJava {
public static void main(String[] args) {
Jedis jedis = new Jedis("58.87.117.26",6379);
//登录密码
jedis.auth("summer");
System.out.println("连接成功");
//查看服务是否运行
System.out.println("服务正在运行: "+jedis.ping());
}
}
运行结果:
连接成功
服务正在运行: PONG
为了便于调用,连接服务方法封装成类。本人使用junit-4.10.jar,网上下载安装方式同jedis。
package com.summer.jedis;
import redis.clients.jedis.Jedis;
public class RedisJava {
public Jedis connectRedis() {
Jedis jedis;
//连接本地的 Redis 服务
jedis = new Jedis("58.87.117.26",6379);
//登录密码
jedis.auth("summer");
System.out.println("连接成功");
//查看服务是否运行
System.out.println("服务正在运行: "+jedis.ping());
return jedis;
}
}
-----------------------------------------------------------
package com.summer.jedis;
import org.junit.Test;
public class TestJedis {
@Test
public void test(){
//测试连接redis
new RedisJava().connectRedis();
}
}
jedis存储数据操作
package com.summer.jedis;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import redis.clients.jedis.Jedis;
/***
* redis存储数据操作
* @author lj
*
*/
public class RedisJava02 {
public static Jedis jedis;
/**
* Redis Java String(字符串) 实例
*/
public void redisStringJava(){
// 连接数据库
jedis = new RedisJava().connectRedis();
//设置 redis 字符串数据
jedis.set("jedis_string", "my name is summer!");
// 获取存储的数据并输出
System.out.println("redis 存储的字符串为: "+ jedis.get("jedis_string"));
}
/**
* Redis Java List(列表) 实例
*/
public void redisListJava(){
// 连接数据库
jedis = new RedisJava().connectRedis();
//存储数据到列表中
jedis.lpush("site-list", "Runoob");
jedis.lpush("site-list", "Google");
jedis.lpush("site-list", "Taobao");
// 获取存储的数据并输出
List<String> list = jedis.lrange("site-list", 0 ,2);
for(int i=0; i<list.size(); i++) {
System.out.println("列表项为: "+list.get(i));
}
}
/**
* Redis Java Keys 实例
*/
public void redisKeyJava(){
// 连接数据库
jedis = new RedisJava().connectRedis();
// 获取数据并输出
Set<String> keys = jedis.keys("*");
Iterator<String> it=keys.iterator() ;
while(it.hasNext()){
String key = it.next();
System.out.println(key);
}
}
/**
* Redis Java hash 实例
*/
public void redisHashJava(){
// 连接数据库
jedis = new RedisJava().connectRedis();
// 获取数据并输出
jedis.hset("favorite","color","black");
jedis.hset("favorite","food","ice_cream");
jedis.hset("favorite","animal","dog");
Map<String, String> map = new HashMap<String, String>();
map = jedis.hgetAll("favorite") ;
for(Map.Entry<String, String> m: map.entrySet()){
System.out.println("Key:" + m.getKey()+"; value:"+m.getValue());
}
}
}
编写测试类依次执行
package com.summer.jedis;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@RunWith(JUnit4.class)
public class TestJedis {
@Test
public void test(){
//测试连接redis
//new RedisJava().connectRedis();
//测试Redis Java String(字符串) 实例
//new RedisJava02().redisStringJava();
//测试Redis Java List(列表) 实例
//new RedisJava02().redisListJava();
//测试Redis Java Keys 实例
new RedisJava02().redisKeyJava();
}
}
连接成功
服务正在运行: PONG
redis 存储的字符串为: my name is summer!
----------------------------------------------------------------
连接成功
服务正在运行: PONG
列表项为: Taobao
列表项为: Google
列表项为: Runoob
----------------------------------------------------------------
连接成功
服务正在运行: PONG
jedis_string
site-list
----------------------------------------------------------------
连接成功
服务正在运行: PONG
选择数据库1状态: OK
Key:color; value:black
Key:animal; value:dog
Key:food; value:ice_cream
----------------------------------------------------------------
其他命令
//选择数据库
System.out.println("选择数据库1状态: "+jedis.select(1));
连接成功
服务正在运行: PONG
选择数据库1状态: OK
上一篇:【Redis数据库】命令学习笔记——发布订阅、事务、脚本、连接等命令汇总
【JAVA】使用 jedis操作redis——连接、存储数据、切库等的更多相关文章
- JAVA中通过Jedis操作Redis连接与插入简单库
一.简述 JAVA中通过Jedis操作Redis连接与插入简单库 二.依赖 <!-- https://mvnrepository.com/artifact/redis.clients/jedis ...
- Redis入门和Java利用jedis操作redis
Redis入门和Java利用jedis操作redis Redis介绍 Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库. Redis 与其他 key - val ...
- Java使用Jedis操作Redis大全
Java操作Redis需要导入两个jar: commons-pool2-2.4.2.jar jedis-2.1.0.jar package com.chinasofti.test; import ja ...
- Java通过jedis操作redis缓存
package com.wodexiangce.util; import java.util.Set; import redis.clients.jedis.Jedis; /** * redis工具类 ...
- Java中Jedis操作Redis与Spring的整合
Redis是一个key-value存储系统.它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合)和zset(有序集合).这些数据类型都支持push/pop. ...
- java客户端Jedis操作Redis Sentinel 连接池
pom配置: <dependency> <groupId>org.springframework.data</groupId> <artifactId> ...
- Java通过jedis操作redis(增删改查)
package sgh.main.powersite; import java.util.ArrayList; import java.util.HashMap; import java.util.I ...
- jedis操作redis的几种常见方式总结
Redis是一个著名的key-value存储系统,也是nosql中的最常见的一种,这篇文章主要给大家总结了关于在java中jedis操作redis的几种常见方式,文中给出了详细的示例代码供大家参考学习 ...
- Java Spring mvc 操作 Redis 及 Redis 集群
本文原创,转载请注明:http://www.cnblogs.com/fengzheng/p/5941953.html 关于 Redis 集群搭建可以参考我的另一篇文章 Redis集群搭建与简单使用 R ...
随机推荐
- mysql-定时对表分区
1, 分区 具体可见: http://blog.csdn.net/open_data/article/details/46893331 1, 分区类型: RANGE分区:基于属于一个给定连续区间的列值 ...
- LNP环境下Nginx与PHP配合解析的原理
正在理解中,查阅资料,加上自我理解,得出如下结论,如有错误,欢迎指正.... LNP环境,Nginx与PHP配合运行的原理解释: 以前的互联网时代我们成为web1.0时代,那时用户是被动接受网络信息, ...
- 【React 资料备份】React v16.3之后的生命周期
React v16.4 的生命周期图 React v16.4 的生命周期 变更缘由 原来(React v16.0前)的生命周期在React v16推出的Fiber之后就不合适了,因为如果要开启asyn ...
- 使用netfilter_queue改包笔记
系统:centos 7 准备:安装libnetfilter_queue模块,可以yum安装,也可以网上下载rpm包安装 简介:使用iptables在NAT表上创建DNAT与SNAT规则,对数据包进行转 ...
- spring boot整合双持久层框架jpa、mybatis
公司之前用的是spring boot + jpa,但由于jpa无法完美的解决某些动态查询问题,就使用的jdbcTemplate 动态封装SQL,由于代码相对复杂,可读性差,现准备再引入mybatis. ...
- 几种常见算法的Python实现
1.选择排序 选择排序是一种简单直观的排序算法.它的原理是这样:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的后 ...
- ConcurrentHashMap 源码阅读小结
前言 每一次总结都意味着重新开始,同时也是为了更好的开始.ConcurrentHashMap 一直是我心中的痛.虽然不敢说完全读懂了,但也看了几个重要的方法,有不少我觉得比较重要的知识点. 然后呢,放 ...
- C# WinForm 关于窗体最大化时的是否全屏效果与是否遮盖任务栏
0.新建窗体 及添加按钮 1. 执行如下按钮事件 private void btnFormMax_Click(object sender, EventArgs e) { if (this ...
- How to write a professional email?
Advantages and Disadvantages of Email communication compared with Face-To-Face communication: Emai ...
- 线程基础的一些理解(一)(java)
一.多线程的基本概念 线程是指进程中的一个执行场景,也就是执行流程,所以我们首先要聊一聊进程,以及进程和线程的关系 1.什么是进程? 一个进程对应一个应用程序,就像我们在windows系统中启动Wo ...