Java连接redis,首先修改两项配置文件

bind 127.0.0.1 ::1 注释掉

protected-mode 设置为no

然后需要导入一个依赖

<!--redis-->
<dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>3.1.0</version>
</dependency>  

为了方便测试,我们引入junit

<!--junit-->
<dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.13</version>
</dependency>

这里我们给出一个例子,jedis对象就像我们的客户端

RedisDemo

package com.hzy.redis;import org.junit.Test;
import redis.clients.jedis.Jedis;public class RedisDemo {public static void main(String[] args) {// 连接Redis服务器Jedis jedis = new Jedis("192.168.40.128",6379);// 权限认证,也就是我们redis-cli设置的密码jedis.auth("root");// 测试是否连接成功// CentOS下查看防火墙运行访问的端口号:firewall-cmd --list-ports// 开启6379端口号:firewall-cmd --zone=public --add-port=6379/tcp --permanent// 重启防火墙:firewall-cmd --reloadSystem.out.println(jedis.ping());}/** 测试String,redis中有哪些命令,jedis中就有哪些方法* */@Testpublic void test1() {Jedis jedis = new Jedis("192.168.40.128",6379);jedis.auth("root");jedis.set("strName","hzy");String strName = jedis.get("strName");System.out.println(strName);jedis.close();}/** redis是为了减轻数据库的访问压力* 如果某key存在,就在redis中查询,否则就去数据库中查询* 并将查询出的数据存入到redis* */@Testpublic void test2() {Jedis jedis = new Jedis("192.168.40.128",6379);jedis.auth("root");String key = "appName"; // key的名称if (jedis.exists(key)) {String s = jedis.get(key);System.out.println("redis中查询到的");} else {String s = "应用名";jedis.set(key,s);System.out.println("数据库中查询");}jedis.close();}
}

而且我们还可以通过连接池的方式进行操作,这里我们通过一个工具类进行获取jedis

RedisPoolUtil

package com.hzy.redis;import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;public class RedisPoolUtil {private static JedisPool jedisPool;static {// 连接池配置信息,不写有默认值
//        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
//        jedisPoolConfig.setMaxTotal(5); // 设置最大连接数
//        jedisPoolConfig.setMaxIdle(1); // 设置最大空闲数// 连接池
//        JedisPool jedisPool = new JedisPool(jedisPoolConfig,"192.168.40.128",6379);// 连接池jedisPool = new JedisPool("192.168.40.128",6379);}public static Jedis getJedis() {Jedis jedis = jedisPool.getResource();jedis.auth("root");return jedis;}public static void close(Jedis jedis) {jedis.close();}
}

然后一个测试类RedisDemo2

package com.hzy.redis;import redis.clients.jedis.Jedis;public class RedisDemo2 {public static void main(String[] args) {Jedis jedis = RedisPoolUtil.getJedis();String key = "strKey";if (jedis.exists(key)) {String s = jedis.get(key);System.out.println("redis中查询到的");} else {String s = "应用名";jedis.set(key,s);System.out.println("数据库中查询");}RedisPoolUtil.close(jedis);}
}

第一次查询的时候,会输出数据库中查询,后续查询都是在redis中查询到的

下面演示Hash类型RedisDemo3

package com.hzy.redis;import org.junit.Test;
import redis.clients.jedis.Jedis;import java.util.Map;/*
* 完成Hash类型读取
* 用hash存储一个对象
* 判断redis中是否存在该key,如果存在,返回该值
* 如果不存在,查询数据库,并把该值存入redis
* */
public class RedisDemo3 {@Testpublic void test1() {Jedis jedis = RedisPoolUtil.getJedis();String key = "myUser";if (jedis.exists(key)) {Map<String, String> map = jedis.hgetAll(key);System.out.println("redis中查询:" + map);} else {// 查询数据库,并返回结构System.out.println("数据库中查询");jedis.hset(key,"id","1");jedis.hset(key,"username","hzy");jedis.hset(key,"password","123456");}RedisPoolUtil.close(jedis);}
}

Redis——Java连接Redis相关推荐

  1. java 连接redis失败_java 连接Redis问题及demo

    java连接linux Redis遇到的问题 昨天在Linux搭建了Redis服务,今天使用java连接测试了一下.要想使用java连接redis服务,就离不开jedis-2.6.1.jar.使用je ...

  2. Java连接Redis及操作(二)

    前言 上一节我们学习了java连接Redis,并且连接Redis成功,今天博主带领大家进行简单的操作Redis.要想对Redis进行Java的操作,必须先了解Redis API(点击这里),可看到AP ...

  3. Java连接Redis及操作(一)

    Redis简介 Redis是一个开源的使用ANSI c语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.它是一种非关系性的数据库.它是以key-val ...

  4. java连接redis存取数据(详细)

    声明:本文章仅供参考,学无止境,若有不足之处请指出,非常感谢! 源代码+相关工具下载:https://download.csdn.net/download/corleone_4ever/1081125 ...

  5. Redis集群搭建及java连接redis

    Redis集群搭建及java连接redis Redis集群分为三种: 1.主从关系模式2.Sentinel哨兵关系模式3.Cluster去中心化模式 1.主从关系模式 1.1.什么是主从模式? (1) ...

  6. Java连接Redis

    Java连接Redis Jedis Client是Redis官网推荐的一个面向java客户端,库文件实现了对redis各类API进行封装调用. 引入jar包 我创建的是maven项目,所以只用在pom ...

  7. java 连接redis 以及基本操作

    一.首先下载安装redis 二.项目搭建 1.搭建一个maven 工程 2. 在pom.xml文件的dependencies节点下增加如下内容: <!-- resis --><dep ...

  8. redis java连接出错_redis连接错误与spring boot

    我使用spring boot框架来连接redis,我得到了错误 Caused by: java.lang.NoSuchMethodError: redis.clients.jedis.JedisSha ...

  9. java连接redis不稳定_java相关:jedispool连redis高并发卡死的问题

    java相关:jedispool连redis高并发卡死的问题 发布于 2020-6-30| 复制链接 本篇文章主要介绍了jedispool连redis高并发卡死的问题,小妖觉得挺不错的,现在分享给大家 ...

最新文章

  1. 如何重命名本地Git分支?
  2. SQL Server 创建约束图解 唯一 主键
  3. Angular中调用css3动画实现侧边栏的显示与隐藏
  4. 5个php实例,细致说明传值与传引用的区别
  5. 配置centos7 IP以及网络问题的排查
  6. android studio 预览问题 :java.lang.NoClassDefFoundError: com/android/util/PropertiesMap
  7. mysql 查询姓王_MySQL查询语句练习题,测试足够用了
  8. 手把手教你强化学习 (七) 强化学习中的无模型控制
  9. Node.js简介与架构
  10. Java面试----2018年最新Struts2面试题
  11. 网易互娱的数据库选型和 TiDB 应用实践
  12. Python 实现微信自动通过好友添加请求!!!
  13. 网站服务器停止响应是什么意思?
  14. 密码库LibTomCrypt学习记录——(2.25)分组密码算法的工作模式——EAX加密认证模式
  15. MySQL34道例题
  16. python金融量化书籍_超强干货 | Python金融数据量化分析教程+机器学习电子书
  17. 在金融公司做 IT 是什么感觉?
  18. 手机怎么把php转换mp3,如何使用MP3转换器转换音频格式
  19. Google 天气预报 API
  20. mysql 存儲emjoy表情是報錯Incorrect string value:

热门文章

  1. 重拾阅读--朝花夕拾啊
  2. 求解斐波那契数列复杂度分析
  3. 背景固定,内容滑动效果 - 仿QQ下载首页
  4. websql使用实例
  5. HDU 3586 Information Disturbing (树形DP,二分)
  6. android学习日记13--数据存储之SharedPreference
  7. Perl 数字与字符串运算符之区别
  8. VisualSVN 补丁,你懂的,需要的速度进~ (更新至6.0.1)
  9. Eclipse中Mybatis的自动提示的配置
  10. 文本聚类分析算法_常用的聚类分析算法综述