第一节:使用Jedis 连接Redis
新建maven项目:
pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.cy</groupId>
<artifactId>JedisDemo</artifactId>
<version>0.0.1-SNAPSHOT</version> <dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
</dependencies>
</project>

JedisTest.java:

package com.cy.test;

import redis.clients.jedis.Jedis;

public class JedisTest {
public static void main(String[] args) {
Jedis jedis = new Jedis("192.168.8.102", 6379); // 创建客户端 设置IP和端口
jedis.auth("123456"); // 设置密码
jedis.set("name", "Jedis测试"); // 设置值
String value = jedis.get("name"); // 获取值
System.out.println(value);
jedis.close(); // 释放连接资源
}
}

在测试过程中的报错以及解决办法:

报连接错误:Caused by: java.net.SocketTimeoutException: connect timed out,需要我们配置下防火墙 开一个6379端口权限
firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --reload
 
报连接拒绝错误:Caused by: java.net.ConnectException: Connection refused: connect
需要编辑redis.conf ,将绑定本机bind 127.0.0.1注释掉;
[root@bogon redis]# vi /usr/local/redis/redis.conf
 
报连接错误:Exception in thread "main" redis.clients.jedis.exceptions.JedisDataException: DENIED Redis is running in protected mode because protected mode is enabled
这个是因为远程连接redis redis自我保护 拒绝访问;
需要设置redis连接密码:
[root@localhost redis]# ./bin/redis-cli
127.0.0.1:6379> config set requirepass 123456
设置密码 123456 127.0.0.1:6379> quit
[root@localhost redis]# ./bin/redis-cli 127.0.0.1:6379> get name
(error) NOAUTH Authentication required. 127.0.0.1:6379> auth 123456
OK
第二节:Jedis 连接池使用
JedisPoolTest.java:
package com.cy.test;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig; public class JedisPoolTest {
public static void main(String[] args) {
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(100); //设置最大连接数
config.setMaxIdle(10); //设置最大空闲连接数 JedisPool jedisPool = new JedisPool(config, "192.168.8.102", 6379);
Jedis jedis = null;
try{
jedis = jedisPool.getResource();
jedis.auth("123456");
jedis.set("name", "Jedis测试2");
String value = jedis.get("name");
System.out.println(value);
}catch(Exception e){
e.printStackTrace();
}finally{
if(jedis!=null){
jedis.close();
}
if(jedisPool!=null){
jedisPool.close();
}
}
}
}

峰Redis学习(2)Jedis 入门实例的更多相关文章

  1. Redis学习一:Nosql入门和概述

    现在Redis越来越火,为了适应技术的发展,开始学习一下Redis,在学习Redis之前先学习一下Nosql. 第一部分:入门概述 1.1 互联网时代背景下大机遇,为什么用nosql 1.1.1 单机 ...

  2. redis实现spring-redis-data的入门实例

    redis的客户端实现.主要分为spring-redis-data .jredis. 记录下spring-redis-data的学习心得:spring-redis-data 中我目前主要用了它的存.取 ...

  3. jedis入门实例

    在使用传统的关系数据库,我们都需要依赖一个所谓的实现了jdbc规范的驱动程序来连接数据库,这些驱动程序由各大数据库厂商提供.这些驱动就是jar包,里面就是封装了对数据库的通信协议,我们通过简单的调用就 ...

  4. Redis学习(2)—— 实例与注释说明[转]

    import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; import ...

  5. Mac上的redis安装与jedis入门

    Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件 安装与配置 (1) https://redis.io/download下载redis stable ...

  6. Redis学习一(基础入门).

    一.前言 Redis是一个开源的使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化的日志型.key-Value 的数据库.并提供多种语言的API. 通常,Redis 将数据存储于 ...

  7. 峰Redis学习(9)Redis 集群(概述)

    第一节:Redis 集群概述 redis cluster是去中心化,去中间件的,也就是说,集群中的每个节点都是平等的关系,都是对等的,每个节点都保存各自的数据和整个集群的状态.每个节点都和其他所有节点 ...

  8. 峰Redis学习(8)Redis 持久化AOF方式

    第三节:Redis 的持久化之AOF 方式 AOF方式:将以日志,记录每一个操作   优势:安全性相对RDB方式高很多: 劣势:效率相对RDB方式低很多: 1)AOF方式需要配置: # Please ...

  9. 峰Redis学习(7)Redis 持久化RDB方式

    第一节:Redis 持久化介绍 redis所有的数据都存在内存中,所以速度非常快,但是一旦断电等情况,数据就没了.从内存当中同步到硬盘上,这个过程叫做持久化过程. 持久化操作,两种方式:rdb方式.a ...

随机推荐

  1. Linux如何在(localhost)本地打开html

    自己实验的结果,可能不是最好的办法,方法不唯一 1. 下载Tomcat https://www.cnblogs.com/liangweiping/p/5113857.html 如何查看本机的端口服务 ...

  2. hdu1846 Brave Game 博弈

    十年前读大学的时候,中国每年都要从国外引进一些电影大片,其中有一部电影就叫<勇敢者的游戏>(英文名称:Zathura),一直到现在,我依然对于电影中的部分电脑特技印象深刻.今天,大家选择上 ...

  3. 【BZOJ1067】【SCOI2007】降雨量

    新人求助,降雨量那题,本机AC提交AC 原题: 我们常常会说这样的话:“X年是自Y年以来降雨量最多的”.它的含义是X年的降雨量不超过Y年,且对于任意Y<Z<X,Z年的降雨量严格小于X年.例 ...

  4. MySQL Session--批量KILL会话

    使用SELECT INTO OUTFILE+SOURCE批量KILL ## 查看kill_id文件是否存在 SYSTEM cat /tmp/kill_id.sql ## 如果文件存在,则先删除 sys ...

  5. 几个方便的nodejs 任务调度框架

    摘录几个方便的nodejs 任务调度包 node-cron https://github.com/kelektiv/node-cron node-schedule https://github.com ...

  6. Go语言编程 (许式伟 等 著)

    第1章 初识Go语言 1.1 语言简史 1.2 语言特性 1.2.1 自动垃圾回收 1.2.2 更丰富的内置类型 1.2.3 函数多返回值 1.2.4 错误处理 1.2.5 匿名函数和闭包 1.2.6 ...

  7. C# WinForm 菜单项的大小、高宽的手动控制

    控制菜单项的第一级的下级菜单项的大小: 直接通过(ContextMenuStrip对象).AutoSize = false.(ContextMenuStrip对象).Size = new Size(5 ...

  8. 数据库连接出错 expected key exchange group packet form server

    数据库连接出错 expected key exchange group packet form server SSH: expected key exchange group packet form ...

  9. python的requests快速上手、高级用法和身份认证

    https://blog.csdn.net/qq_25134989/article/details/78800209 快速上手 迫不及待了吗?本页内容为如何入门 Requests 提供了很好的指引.其 ...

  10. 配置hive元数据数据库

    <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <v ...