【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 ...
随机推荐
- find_package()的查找*.cmake的顺序
1. find_package(<Name>)命令首先会在模块路径中寻找 Find<name>.cmake,这是查找库的一个典型方式.具体查找路径依次为CMake: 变量${C ...
- Ubuntu下安装qq方法及疑难问题解决
在Ubuntu下安装qq有两种方法:.tar.gz包安装和.deb包安装下载地址:http://im.qq.com/qq/linux/download.shtml 方法一:.tar.gz包安装法 .t ...
- es-04-mapping和setting的建立
mapping和setting, 使用java客户端比较难组装, 可以使用python或者scala 这儿直接在kibana中进行DSL创建 1, mapping 创建索引的时候, 可以事先对数据进行 ...
- MVC源码分析 - Action/Result 过滤器执行时机
前面 的篇章, 解析了Action方法的查找, 以及 Authorize, Action, Result, Error 过滤器的加载时机. 也花了两篇去看授权和错误过滤器的使用. 但是对于 Actio ...
- TCP连接的TIME_WAIT和CLOSE_WAIT 状态解说
相信很多运维工程师遇到过这样一个情形: 用户反馈网站访问巨慢, 网络延迟等问题, 然后就迫切地登录服务器,终端输入命令"netstat -anp | grep TIME_WAIT | wc ...
- 第六章 对象作用域与servlet事件监听器
作用域对象 Servlet上下文监听器 Servlet会话监听器 Servlet请求监听器 一:对象作用域 作用域对象 属性操作方法 作用域范围说明 ServletContext( ...
- Spring AOP切面变成——创建增强类
说明 Spring使用增强类定义横向逻辑,同时Spring只支持方法连接点,增量类还包含在方法的哪一点添加横切代码的方位信息.所以增强既包含横向逻辑,又包含部分连接点的信息. 类型 按着增强在目标类方 ...
- Crazy Shopping(拓扑排序+完全背包)
Crazy Shopping(拓扑排序+完全背包) Because of the 90th anniversary of the Coherent & Cute Patchouli (C.C. ...
- 【C#数据结构系列】树和二叉树
线性结构中的数据元素是一对一的关系,树形结构是一对多的非线性结构,非常类似于自然界中的树,数据元素之间既有分支关系,又有层次关系.树形结构在现实世界中广泛存在,如家族的家谱.一个单位的行政机构组织等都 ...
- socket 模拟 HTTP请求
一.socket介绍 网络由下往上分为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层.IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层.socket则是对TCP/I ...