Redis应用学习(三)——Jedis客户端的简单使用介绍

Stella981
• 阅读 832

1. Redis的Java客户端程序——Jedis

    1. 在Redis的安装目录中redis-cli是一个Redis的Shell语言写的客户端,通过运行该客户端就可以实现一系列Redis操作,而如果要使用Java语言的Redis客户端,就必须要使用Jedis相关的包。首先导入Jedis相关的包,建议使用maven导入依赖包

<dependency>
  <groupId>redis.clients</groupId>
  <artifactId>jedis</artifactId>
  <version>2.9.0</version>
</dependency>

使用实例代码如下

/**
 * @ClassName:TestJedis
 * @Description:直连Redis
 */
public class TestJedis {
    public static void main(String[] args) {
        //直接创建一个Jedis对象,并连接(TCP连接)到Redis服务器,构造参数分别是IP地址和端口号
        Jedis jedis=new Jedis("192.168.10.128", 6379);
        //执行一个set操作
        jedis.set("key", "value");
        //执行一个get操作,返回获取的字符串
        String value=jedis.get("key");
        System.out.println(value);
        //关闭Redis连接资源
        jedis.close();
    }
}

Jedis的还有许多其他重载形式的构造方法以及对应Redis中几种数据类型操作命令的方法,方法名和方法作用基本和在linux中的Shell语言所写的客户端命令相同,具体可以查看API文档。

    2. Jedis连接池:与普通数据库连接池一样,也有连接池来管理Jedis对象,进行对Redis连接的管理

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
/**
 * @ClassName:TestJedisPool
 * @Description:简单使用Jedis连接池对象
 */
public class TestJedisPool {
    public static void main(String[] args) {
        //创建连接池基本设置的对象,可以通过该对象来设置一些连接池的配置,如果不设置就使用默认设置
        GenericObjectPoolConfig poolConfig=new GenericObjectPoolConfig();
        String host="192.168.10.128";
        int port=6379;
        JedisPool pool=null;
        Jedis jedis=null;
        try {
            pool=new JedisPool(poolConfig, host, port);
            jedis= pool.getResource();
            //执行一个set操作
            jedis.set("key", "value");
            //执行一个get操作,返回获取的字符串
            String value=jedis.get("key");
            System.out.println(value);
        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            //这里的close方法并不是关闭Redis连接资源,而是将这个jedis对象返还给连接池
            jedis.close();
        }
    }
}
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Easter79 Easter79
3年前
springboot整合redis缓存一些知识点
前言最近在做智能家居平台,考虑到家居的控制需要快速的响应于是打算使用redis缓存。一方面减少数据库压力另一方面又能提高响应速度。项目中使用的技术栈基本上都是大家熟悉的springboot全家桶,在springboot2.x以后操作redis的客户端推荐使用lettuce(生菜)取代jedis。jedis的劣势主要在于直连redis,又无法做到
Stella981 Stella981
3年前
Redis Cluster集群主从方案
RedisCluster集群主从方案本文介绍一种通过Jedis和Cluster实现Redis集群(主从)的高可用方案,该方案需要使用Jedis2.8.0(推荐),Redis3.0及以上版本(强制).附:RedisCluster集群主从方案:http://www.cnblogs.com/soul
Wesley13 Wesley13
3年前
Java使用Redis学习笔记
如果我们使用Java操作Redis,需要确保已经安装了redis服务及Javaredis驱动。Maven项目可以直接在pom.xml中加入jedis包驱动:<dependency<groupIdredis.clients</groupId<artifactI
Stella981 Stella981
3年前
SpringBoot系列十:SpringBoot整合Redis
声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅。1、概念:SpringBoot整合Redis 2、背景Redis的数据库的整合在java里面提供的官方工具包:jedis,所以即便你现在使用的是SpringBoot,那么也继续使用此开发包。2.1、RedisTemplate模版操作在Sp
Stella981 Stella981
3年前
REDIS 客户端封装 SPARROW 框架源码
redis本身有客户端,先抛出来一个问题?为什么要对redis客户端进行二次封装?大概在11年时侯,第一次接触redis,那时侯研究过redis的各种数据结构,直接拿redis的客户端jedis直接用。公司安排人要对jedis进行封装,当时就很不理解,为什么非要封装一次才可以?后来自己写框架,意识到一些东西是需要封装的,比如连接的打开和释放,比如一
Easter79 Easter79
3年前
SpringBoot系列十:SpringBoot整合Redis
声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅。1、概念:SpringBoot整合Redis 2、背景Redis的数据库的整合在java里面提供的官方工具包:jedis,所以即便你现在使用的是SpringBoot,那么也继续使用此开发包。2.1、RedisTemplate模版操作在Sp
Wesley13 Wesley13
3年前
J2Cache 中使用 Lettuce 替代 Jedis 管理 Redis 连接
一直以来J2Cache都是使用Jedis连接Redis服务的。Jedis是一个很老牌的Redis的Java开发包,使用很稳定,作者维护很勤勉,社区上能搜到的文章也非常非常多。算是使用范围最广的Redis开发包。但是Jedis比较推出时间比较早,整个设计思路比较传统,例如不支持异步操作,接口设计比较繁琐老套(相比其他开发包而已),
Stella981 Stella981
3年前
Nginx + lua +[memcached,redis]
精品案例1、Nginxluamemcached,redis实现网站灰度发布2、分库分表/基于Leaf组件实现的全球唯一ID(非UUID)3、Redis独立数据监控,实现订单超时操作/MQ死信操作SelectPollEpollReactor模型4、分布式任务调试Quartz应用