Jedis的入门

avatar 2017年10月26日22:08:41 5 2557 views
博主分享免费Java教学视频,B站账号:Java刘哥 ,长期提供技术问题解决、项目定制:本站商品点此

一、下载必备的 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
  • 个人淘宝
  • 店铺名:言曌博客咨询部

  • (部分商品未及时上架淘宝)
avatar

发表评论

avatar 登录者:匿名
匿名评论,评论回复后会有邮件通知

  

已通过评论:0   待审核评论数:0