自学Redis技术,如何在Java应用

~~自学之路之艰辛,现在的世界离不开百度 但是百度要么找到大牛篇,要么就是复制粘贴篇。 (小白的无奈)以此篇开始,无论是否找到工作,开启了漫漫自学之路 一个程序员小白的成长 希望,这世界留点余地,时刻准备着,
但希望有足够的时间与精力支持我走下去!
~~
学习需要理论结合实践

首先了解什么是redis:(百度百科更全面,本系列意在坚持作者的自学之路)
REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。

Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。

Redis 简介
Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。

Redis 与其他 key - value 缓存产品有以下三个特点:

Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
Redis支持数据的备份,即master-slave模式的数据备份。
Redis 优势
性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。
redis安装
请参考:菜鸟教程redis的安装
安装后回来更快速能在java中应用

  1. 首先新建一个maven项目

    在pom.xml中添加依赖
  <dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>3.1.0</version></dependency>

打开redis 安装目录 单击红框处,并输入cmd 然后回车

在命令行输入 redis-server.exe redis.windows.conf

确保redis服务开启,这里我选择手动开启并未在服务中一直保持开启(与Mysql服务相通)

然后再新建测试类

import java.util.Iterator;
import java.util.List;
import java.util.Set;import redis.clients.jedis.Jedis;public class RedisJava{public static void main(String[] args) {//localhost:127.0.0.1:6379Jedis jedis = new Jedis("localhost");System.out.println("连接成功!");//密码验证,没有设置过密码可以跳过jedis.auth("xxx");//查看服务是否运行System.out.println("服务是否运行:" + jedis.ping());//设置 redis 字符串数据jedis.set("runoobkey", "www.runoob.com");// 获取存储的数据并输出System.out.println("redis 存储的字符串为: "+ jedis.get("runoobkey"));//存储数据到列表中jedis.lpush("site-list", "Runoob");jedis.lpush("site-list", "Google");jedis.lpush("site-list", "Taobao");// 获取存储的数据并输出List<String> list = jedis.lrange("site-list", 0 ,2);for(int i=0; i<list.size(); i++) {System.out.println("列表项为: "+list.get(i));}// 获取Keys数据并输出Set<String> keys = jedis.keys("*"); Iterator<String> it=keys.iterator() ;   while(it.hasNext()){   String key = it.next();   System.out.println(key);   }}}

注意没设密码,不需要这行代码

测试结果:应用成功!

自学Redis技术,如何在Java应用相关推荐

  1. java 查找链表中间元素_如何在Java中一次性查找Java中链表的中间元素

    如何在一次传递中找到LinkedList的中间元素?这是一个 Java 和非Java程序员面试时经常被问到的编程问题.这个问题类似于检查回文或计算阶乘,有时也会要求编写代码.为了回答这个问题,候选人必 ...

  2. 如何在Java中处理ConcurrentModificationException? 在循环中从ArrayList中删除元素时要当心...

    从Java中从ArrayList中删除元素时常见的问题之一是ConcurrentModificationException. 如果您对索引使用经典的for循环或增强的for循环,并尝试使用remove ...

  3. 如何在Java中生成比特币钱包地址

    让我们通过学习比特币(Bitcoin)如何实施该技术的各个方面来工作,好吗?该技术包括以下几个方面: 比特币地址bitcoin address是用来发送和接收比特币的. 交易transaction是比 ...

  4. 如何在Java项目中查找未使用/无效的代码

    本文翻译自:How to find unused/dead code in java projects What tools do you use to find unused/dead code i ...

  5. 如何在Java中将double转换为int?

    在本文中,我们将看到如何将double转换为int. 在Java编程中,您将有一个double原语值(例如82.14),但是要执行进一步的操作,您需要一个int值(例如82),所以让我们看看如何在Ja ...

  6. 那些想不断提高自己技术水平的Java程序员们

    对程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水平的Jav ...

  7. java 精确到微妙_如何在Java中以微秒精度测量时间?

    我在Internet上看到应该使用System.nanoTime(),但这对我不起作用-它为我提供了毫秒级的时间.我只需要函数执行前后的微秒,就可以知道需要多长时间.我正在使用Windows XP. ...

  8. 新课发布-SpringBoot2.0缓存中间件Redis技术入门与实战(抢红包系统设计与实战)

    概要介绍:历经半个多月的时间,Debug呕心沥血.亲自录制的 "缓存中间件Redis技术入门与应用场景实战(SpringBoot2.x + 抢红包系统设计与实战)"的新课终于完成了 ...

  9. 电脑黑客技术新手入门,自学黑客技术入门教程

    最近经常有小伙伴联系我说要学黑客技术,当然目的各种各样,有的就是觉得黑客很酷,单纯想要学技术,还有的就是想找人帮忙攻击赌博网站或者监听别人的电话(以女朋友的电话居多),对于想要单纯学技术的朋友我很欢迎 ...

最新文章

  1. AWS ML deploy platform
  2. 【跃迁之路】【674天】程序员高效学习方法论探索系列(实验阶段431-2018.12.19)...
  3. ZOJ 1696 Viva Confetti 计算几何
  4. C语言字符串与中文编码
  5. 百度编辑器在编辑视频时src丢失的问题
  6. 引导类、扩展类、系统类加载器的使用及演示
  7. 基于事件驱动架构构建微服务第11部分:持续集成
  8. 【渝粤教育】电大中专中医基础知识 (2)作业 题库
  9. 包r语言_R语言交互式可视化包CanvasXpress
  10. python 概率分布类型检验_统计学:假设检验Python案例实现+概率论基础知识回顾...
  11. 【Druid】Druid简介
  12. 名为 cursor_jinserted 的游标不存在_你还在买丑橘吗?知道的人不多,看完后记得告诉身边人...
  13. 在使用springMVC时,页面报的404异常
  14. 怎么用EasyRecovery恢复硬盘内被误删的数据
  15. 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第2节 线程实现方式_13_Thread和Runnable的区别...
  16. 计算机ps基础知识教案范文,平面设计基础教案范文
  17. OBJ格式模型详细介绍
  18. vue开发公众号-关闭浏览器返回主公众号
  19. 使用matplotlib画3d平面风场_新篇章:12激光SLM金属3D打印机开卖,速度提升20倍,工业批量化生产新利器...
  20. Java和Python哪个比较有前途,好就业?(初学者必读)

热门文章

  1. pycharm分辨率清晰度
  2. 计算机显示适配器禁用了电脑黑屏,Win10电脑禁用集成显卡后黑屏如何解决_Win10系统禁用集成显卡后黑屏解决方案...
  3. 互联网提供的音频/视频服务类型
  4. 框架 - SpringMVC框架
  5. 什么是动态域名解析服务?
  6. mysql 触发器 sql server_喜忧参半的SQL Server触发器
  7. 怎么改锁定计算机的背景,电脑修改登录界面背景壁纸的操作方法
  8. 基于android的快递寄件平台
  9. 性能测试监控——CPU
  10. 企业短信平台 php,梅州PHP短信平台企业,PHP短信平台