Jedis的入门

avatar 2017年10月26日22:08:41 评论 148 views

一、下载必备的 jar

1、下载 Jedis 需要的两个 jar

下载地址:

http://mvnrepository.com/artifact/redis.clients/jedis

http://mvnrepository.com/artifact/org.apache.commons/commons-pool2

 

二、创建Java工程项目

1、新建一个 lib 文件夹

将上面的两个 jar 拷贝进去,然后将两个 jar 添加到环境变量中(Eclipse是右键 build path,IntelliJ IDEA 是点击右上角的Project Structure按钮,添加依赖)

 

2、新建一个 测试文件

  1. package com.liuyanzhao.jedis;
  2. import org.junit.Test;
  3. import redis.clients.jedis.Jedis;
  4. /**
  5.  * @Author 言曌
  6.  * @DATE 2017/10/26 下午8:52
  7.  * @URL http://liuyanzhao.com
  8.  */
  9. public class JedisDemo1 {
  10.     //实例测试
  11.     @Test
  12.     public void demo1() {
  13.         //1、设置IP地址和端口
  14.         Jedis jedis = new Jedis("ip地址"6379);
  15.         //2、保存数据
  16.         jedis.set("name""liuyanzhao");
  17.         //3、获取数据
  18.         String value = jedis.get("name");
  19.         System.out.println(value);
  20.         //4、释放资源
  21.         jedis.close();
  22.     }
  23. }

也要导入 Junit 的包哦。测试 demo1

可见,测试失败,connection refused,无法连接我们的 Redis 所在的服务器。原因可能是 Redis 保护和防火墙的原因

 

3、解决办法如下

① 放行该 6370 端口

vim /etc/sysconfig/iptables

添加一条 放行记录

然后重启 防火墙

service iptables restart

② 修改 redis.conf 文件

一处是在 bind 127.0.0.1 前加#号 (注释掉)

第二处是 将 protected-mode 的 yes 改成 no

4、然后重新测试,连接成功了

5、通过连接池获得连接

  1. @Test
  2.     //连接池方式连接
  3.     public void demo2() {
  4.         //获得连接池的配置对象
  5.         JedisPoolConfig config = new JedisPoolConfig();
  6.         //设置连接数
  7.         config.setMaxTotal(30);
  8.         //设置最大空闲连接数
  9.         config.setMaxIdle(10);
  10.         //获得连接池
  11.         JedisPool jedisPool = new JedisPool(config,"ip地址",6379);
  12.         //获得核心对象
  13.         Jedis jedis = null;
  14.         try {
  15.         //通过连接池获得连接
  16.         jedis = jedisPool.getResource();
  17.         //设置数据
  18.         jedis.set("age","20");
  19.         //获取数据
  20.         String value = jedis.get("age");
  21.         System.out.println(value);
  22.         } catch (Exception e) {
  23.             e.printStackTrace();
  24.         } finally {
  25.             if(jedis != null) {
  26.                 jedis.close();
  27.             }
  28.             if(jedisPool != null) {
  29.                 jedisPool.close();
  30.             }
  31.         }
  32.     }

 

本文链接:https://liuyanzhao.com/6470.html

  • 微信
  • 交流学习,有偿服务
  • weinxin
  • 博客/Java交流群
  • 资源分享,问题解决,技术交流。群号:590480292
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: