Idea连接redis及Jedis数据操作

注意是否开启了redis服务!!!

1、打开虚拟机终端,查看虚拟机防火墙是否关闭

查看防火墙当前状态命令:

$sudo ufw status

我的是默认关闭的!

如果你的是激活状态需要自己手动关闭防火墙,不然虚拟机会阻止你的连接

关闭防火墙命令:

$ sudo ufw disable

2、打开redis.conf文件,需要修改里面的一些配置

第一:redis.conf中注释掉bind 127.0.0.1(注释在前面加#)比如我的

修改完成后可以查看你的修改是否成功

输入命令:$ ps -ef|grep redis

此时bind的值配置为空代表会接受所有来自于可用网络接口的连接。

第二:把redis.conf文件中的protected-mode yes==>yes改为no

3、查看本虚拟机ip地址

查看命令:

$ ifconfig

如果输入ifconfg报错,可能没有安装noot-tools工具,输入以下命令安装即可

$sudo apt install net-tools

4、打开Idea创建一个maven项目:

1、首先导入pom.xml文件依赖

 1 <dependencies>
2 <dependency>
3 <groupId>redis.clients</groupId>
4 <artifactId>jedis</artifactId>
5 <version>3.2.0</version>
6 </dependency>
7 <dependency>
8 <groupId>junit</groupId>
9 <artifactId>junit</artifactId>
10 <version>4.12</version>
11 <scope>compile</scope>
12 </dependency>
13 </dependencies>

2、在创建一个Demo01类开始测试程序的编写!

代码如下:

1 public class Demo01 {
2 public static void main(String[] args) {
3 // 创建jedis对象,连接redis服务
4 Jedis jedis=new Jedis("172.0.0.1",6379);//虚拟机ip,默认redis端口号
5 System.out.println(jedis.ping());//打印输出ping
6 jedis.close();//// 关闭jedis,释放资源
7 }
8 }

运行demo01,当控制台输出PONG的时候代表连接成功了!

5、IDEA中jedis数据操作(五种数据类型)

在此maven项目中在创建一个JedisTest01类

1、 操作String字符串:

 1 public class JedisTest01 {
2 //操作字符串
3 @Test
4 public void demo1(){
5 Jedis jedis=new Jedis("127.0.0.1",6379);
6 //设置单个数据
7 //添加数据
8 jedis.set("name","luck");
9 //获取数据
10 String name=jedis.get("name");
11 System.out.println(name);
12 //设置多个数据
13 jedis.mset("k1","v1","k2","v2");
14 List<String> mget=jedis.mget("k1","k2");
15 // System.out.println(mget);
16
17 Set<String> keys=jedis.keys("*");
18 for (String key:keys){
19 // System.out.println(key);
20 }
21 jedis.close(); //关闭jedis,释放资源
22 }
23 }

2、操作list

1 @Test
2 public void demo2(){
3 Jedis jedis=new Jedis("127.0.0.1",6379);
4 jedis.lpush("key1","luck","mary","jack");
5 List<String> values=jedis.lrange("key1",0,-1);
6 System.out.println(values);
7 jedis.close();
8 }

3、操作Set

1 @Test
2 public void demo3(){
3 Jedis jedis=new Jedis("127.0.0.1",6379);
4 jedis.sadd("names","刘德华");
5 jedis.sadd("names","刘德华真的帅!");
6 Set<String> names=jedis.smembers("names");
7 System.out.println(names);
8 jedis.close();
9 }

4、操作SortedSet有序集合

 1 @Test
2 public void demo4(){
3 Jedis jedis=new Jedis("127.0.0.1",6379);
4 Map<String,Double> stuMap = new HashMap<>();
5 stuMap.put("zhangsan",95D);
6 stuMap.put("lisi",92D);
7 stuMap.put("wangwu",100D);
8 System.out.println(jedis.zadd("stu", stuMap)); // 传对象
9 System.out.println(jedis.zrange("stu", 0, 2)); // 遍历
10 System.out.println(jedis.zrevrange("stu", 0, 2)); // 反转遍历
11
12 }

5、操作hash

1 @Test
2 public void demo5(){
3 Jedis jedis=new Jedis("127.0.0.1",6379);
4 jedis.hset("person","age","20");
5 String get=jedis.hget("person","age" );
6 System.out.println(get);
7 jedis.close();
8 }

Java学习,利用IDEA开发工具连接redis的更多相关文章

  1. 从.Net到Java学习第四篇——spring boot+redis

    从.Net到Java学习系列目录 “学习java已经十天,有时也怀念当初.net的经典,让这语言将你我相连,怀念你......”接上一篇,本篇使用到的框架redis.FastJSON. 环境准备 安装 ...

  2. 我使用过的Linux命令之swig - 把C/C++的代码嵌入Java等语言的开发工具

    用途说明 SWIG是Simplified Wrapper and Interface Generator的缩写,其官方站点是http://www.swig.org/.SWIG是个帮助使用C或者C++编 ...

  3. JAVA程序员常用开发工具

    1.JDK (Java Development Kit)Java开发工具集 SUN的Java不仅提了一个丰富的语言和运行环境,而且还提了一个免费的Java开发工具集(JDK).开发人员和最终用户可以利 ...

  4. Java GUI图形界面开发工具

    Applet 应用程序     一种可以在 Web 浏览器中执行的小程序,扩展了浏览器中的网页功能. 缺: 1.需要下载 Applet 及其相关文件 2.Applet 的功能是受限制的 优: 3.无需 ...

  5. Selenium Java 自动化 介绍及开发工具的使用(一)

    前言 目前selenium版本已经升级到3.0了,网上的大部分教程是基于2.0写的,所以在学习前先要弄清楚版本号,这点非常重要.本系列依然以selenium2为基础,目前selenium3本人没做过研 ...

  6. java基础(8):Eclipse开发工具

    1. Eclipse开发工具 Eclipse是功能强大Java集成开发工具.它可以极大地提升我们的开发效率.可以自动编译,检查错误.在公司中,使用的就是Eclipse进行开发. 1.1 Eclipse ...

  7. java 环境配置及开发工具

    1.下载JDK 网址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 2 安装jdk 3.安装好jdk后配置环境变 ...

  8. [ 搭建Redis本地服务器实践系列三 ] :图解Redis客户端工具连接Redis服务器

    上一章 [ 搭建Redis本地服务器实践系列二 ] :图解CentOS7配置Redis  介绍了Redis的初始化脚本文件及启动配置文件,并图解如何以服务的形式来启动.终止Redis服务,可以说我们的 ...

  9. JAVA学习:maven开发环境快速搭建

    转自:http://tech.it168.com/a2011/1204/1283/000001283307.shtml 最近,开发中要用到maven,所以对maven进行了简单的学习.因为有个mave ...

随机推荐

  1. jmeter的安装使用

    以前没自己做过压力测试,一直都是测试在做.现在需要自己做压力测试了,特别学习下jmeter的使用方法.现在做下记录: 1.下载jmeter,这个忽略,百度到处都是 2.打开jmeter,jmeter的 ...

  2. 学习RabbitMQ(五)

    消息中间件就是在消息的传输过程中保存消息的容器.消息中间件再将消息从它的源中继到它的目标时充当中间人的作用.队列的主要目的是提供路由并保证消息的传递:如果发送消息时接收者不可用,消息队列会保留消息,直 ...

  3. Qt的.pro文件格式解析

    Qt的.pro文件格式解析 在Qt中用qmake生成makefile文件,它是由.pro文件生成而来的,.pro文件的具体格式语法如下: 1.注释 .pro文件中注释采用#号,从"#&quo ...

  4. 纯干货数学推导_傅里叶级数与傅里叶变换_Part5_从傅里叶级数推导傅里叶变换

  5. 【译】HTML表单高级样式

    系列文章说明 原文 在本文中,我们将了解如何在HTML表单上使用CSS,为那些难于自定义的表单组件加以样式.如前文所述,文本框和按钮很适合使用CSS,而现在我们得来探索HTML表单样式的那些坑了. 在 ...

  6. .map() vs .forEach() vs for() 如何选择?

    访问原文地址 .map() vs .forEach() vs for() 笔者说,自己基本没怎么用过for()来遍历,主要是用.forEach(). 但是总是会被很多朋友说,这些人认为for()的速度 ...

  7. C#设计编写一个控制台应用程序

    设计编写一个控制台应用程序,练习类的继承. (1) 编写一个抽象类 People,具有"姓名","年龄"字段,"姓名"属性,Work 方法. ...

  8. new String比字符串池浪费空间,为什么要用它?

    对于下面程序中:ss0 = new String( "hello" );是用new()来新建对象的,存于堆中.每调用一次就会创建一个新的对象.当然从节省空间的角度来讲,肯定不如st ...

  9. 初始化properties

    package com.letech.common; import java.io.IOException; import java.util.Properties; public class Con ...

  10. js获取url查询字符串参数

    最近看js高级程序设计 对其中查询字符串参数的获得重新写了,当传递一个完整的URL的时候对查询字符串的提取 function getQueryArgs(){ var qs = (location.se ...