Redis---02Redis的Java客户端
2024-10-08 07:21:24
一、注意
连接Linux里面安装的Redis,需要执行以下步骤:
①禁用防火墙(CentOS 7):systemctl stop firewalld.service
②在redis.conf中注释掉 bind 127.0.0.1 ,然后 protect-mode no
二、Java使用
1.导入Jedis-2.1.0.jar
2.编写代码:
package com.jenne.redis;
import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.Jedis;
import java.util.*;
public class RedisDemo01 {
Jedis jedis;
@Before
public void init() {
//连接本地的 Redis 服务
jedis = new Jedis("192.168.7.128", 6379);
}
@Test
public void testPing() {
init();
//查看服务是否运行,打出pong表示OK
System.out.println("connection is OK==========>: " + jedis.ping());
}
@Test
public void testKey() {
Set<String> keys = jedis.keys("*");
for (Iterator iterator = keys.iterator(); iterator.hasNext(); ) {
String key = (String) iterator.next();
System.out.println(key);
}
System.out.println("jedis.exists====>" + jedis.exists("k2"));
System.out.println(jedis.ttl("k1"));
}
@Test
public void testString() {
System.out.println(jedis.get("k1"));
jedis.set("k4", "k4_Redis");
System.out.println("----------------------------------------");
jedis.mset("str1", "v1", "str2", "v2", "str3", "v3");
System.out.println(jedis.mget("str1", "str2", "str3"));
}
@Test
public void testList() {
List<String> list = jedis.lrange("mylist", 0, -1);
for (String element : list) {
System.out.println(element);
}
}
@Test
public void testSet() {
jedis.sadd("orders", "jd001");
jedis.sadd("orders", "jd002");
jedis.sadd("orders", "jd003");
Set<String> set1 = jedis.smembers("orders");
for (Iterator iterator = set1.iterator(); iterator.hasNext(); ) {
String string = (String) iterator.next();
System.out.println(string);
}
jedis.srem("orders", "jd002");
}
@Test
public void testHash() {
jedis.hset("hash1", "userName", "lisi");
System.out.println(jedis.hget("hash1", "userName"));
Map<String, String> map = new HashMap<String, String>();
map.put("telphone", "13810169999");
map.put("address", "atguigu");
map.put("email", "abc@163.com");
jedis.hmset("hash2", map);
List<String> result = jedis.hmget("hash2", "telphone", "email");
for (String element : result) {
System.out.println(element);
}
}
@Test
public void testZset() {
jedis.zadd("zset01", 60d, "v1");
jedis.zadd("zset01", 70d, "v2");
jedis.zadd("zset01", 80d, "v3");
jedis.zadd("zset01", 90d, "v4");
Set<String> s1 = jedis.zrange("zset01", 0, -1);
for (Iterator iterator = s1.iterator(); iterator.hasNext(); ) {
String string = (String) iterator.next();
System.out.println(string);
}
}
}
三、Redis连接池使用
1.导入commons-pool2-2.4.2.jar
2.编写代码:
package com.jenne.redis;
import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
public class RedisDemo02 {
JedisPool jedisPool;
Jedis jedis;
@Before
public void init() {
//设置到JedisPoolConfig中
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(50);
config.setMaxIdle(10);
//初始化JedisPool
jedisPool = new JedisPool(config, "192.168.7.128", 6379);
jedis = jedisPool.getResource();
}
@Test
public void testPool() {
String ping = jedis.ping();
System.out.println(ping);
}
}
最新文章
- EXTJS4自学手册——EXT基本方法、属性(mixins多继承、statics、require)
- WPF实现炫酷Loading控件
- jQuery源代码学习之四——jQuery.callbacks
- 如何让Targetprocess 中 webhook 推送comment 到指定的项目
- PAT 解题报告 1010. Radix (25)
- Interview----求 1+2+...+n, 不能用乘除法、for、while if、else、switch、case 等关键字以及条件判断语句 (A?B:C)
- BA/PM Competency Module
- 2017 01 16 校内小测 ZXR专场
- C# 操作IIS -App &; AppPools
- opencv---cvor
- CSS中字距,词距,首行缩进,字体大小,排版相关问题的探讨
- Codeforces Beta Round #55 (Div. 2)
- python 基础_ 数组的 增删改查3
- 【python基础】python程序打包成.exe运行时会弹出黑框
- HDU4548+筛素数
- sql 提升查询效率 group by option hash group
- USB events thread - failed to set priority
- Visual Studio中判断项目的类型
- 【BZOJ4868】期末考试 [三分][贪心]
- arm-linux内核start_kernel之前启动分析(1)-接过bootloader的衣钵