首页新闻动态正文

非关系型数据库redis【黑马java培训】

更新时间:2019年07月26日 11时30分04秒 来源:黑马程序员论坛

Redis概念:redis是一款高性能的NOSQL系列的非关系型数据库
关系型数据库:
  • 数据之间有关联关系
  • 数据存储在硬盘的文件上

非关系型数据库:
  • 数据之间没有关联关系
  • 数据存储在内存中

经常查询一些不太经常发生变化的数据,使用缓存思想解决这个问题
  • 从缓存中获取数据
    • 有数据
      • 直接返回

    • 没有数据
      • 从数据库查询
      • 将数据放入缓存
      • 返回数据



下载安装
解压直接可以使用:                
redis.windows.conf:配置文件                
redis-cli.exe:redis的客户端                
redis-server.exe:redis服务器端
file://C:/Users/Lenovo/AppData/Roaming/Typora/typora-user-images/1561081642330.png?lastModify=1561861063
命令操作
redis的数据结构:
  • redis存储的是:key,value格式的数据,其中key都是字符串,value有5种不同的数据结构
    • value的数据结构:
      • 1) 字符串类型 string
      • 2) 哈希类型 hash : map格式
      • 3) 列表类型 list : linkedlist格式。支持重复元素
      • 4) 集合类型 set  : 不允许重复元素
      • 5) 有序集合类型 sortedset:不允许重复元素,且元素有顺序



字符串类型:string
  • 存储:set key value
  • 获取:get key
  • 删除:del key

哈希类型 hash
  • 存储:hset key field value
  • 获取
    • hget key field
    • hgetall key

  • 删除:hdel key field

列表类型 list
  • 添加
    • lpush key value: 将元素加入列表左表
    • rpush key value:将元素加入列表右边

  • 获取
    • lrange key start end :范围获取

  • 删除
    • lpop key: 删除列表最左边的元素,并将元素返回
    • rpop key: 删除列表最右边的元素,并将元素返回


集合类型set:不允许重复元素,无序的
  • 添加:sadd key value
  • 获取:smembers key:获取set集合中所有元素
  • 删除:srem key value:删除set集合中的某个元素

有序集合类型 sortedset:不允许重复元素,且元素有顺序
  • 存储:zadd key score value
  • 获取:zrange key start end
  • 删除:zrem key value

通用命令
  • keys * : 查询所有的键
  • type key:查询键的类型
  • del key:删除指定的key value

持久化
  • redis是一个内存数据库,当redis服务器重启,获取电脑重启,数据会丢失,我们可以将redis内存中的数据持久化保存到硬盘的文件中.
  • redis持久化机制
    • RDB:默认方式,不需要进行配置,默认就使用这种机制
      • 在 一定的间隔时间中,检测key的变化情况,然后持久化数据

      • 编辑redis.windwos.conf文件
        • save 900 1
        • save 300 10
        • save 60 10000

      • 重新启动redis服务器,并指定配置文件名称

    • AOF:日志记录的方式,可以记录每一条命令的操作.可以每一次命令操作后,来持久化数据
      • 编辑redis.windwos.conf文件
        • appendfsync always:每一次都进行持久化
        • appendfsync everysec:每隔一秒进行一次持久化
        • appendfsync no:不进行持久化




Java客户端 Jedis
  • jedis:一款java操作


推荐了解热门学科

java培训 Python人工智能 Web前端培训 PHP培训
区块链培训 影视制作培训 C++培训 产品经理培训
UI设计培训 新媒体培训 产品经理培训 Linux运维
大数据培训 智能机器人软件开发




传智播客是一家致力于培养高素质软件开发人才的科技公司“黑马程序员”是传智播客旗下高端IT教育品牌。自“黑马程序员”成立以来,教学研发团队一直致力于打造精品课程资源,不断在产、学、研3个层面创新自己的执教理念与教学方针,并集中“黑马程序员”的优势力量,针对性地出版了计算机系列教材50多册,制作教学视频数+套,发表各类技术文章数百篇。

传智播客从未停止思考

传智播客副总裁毕向东在2019IT培训行业变革大会提到,“传智播客意识到企业的用人需求已经从初级程序员升级到中高级程序员,具备多领域、多行业项目经验的人才成为企业用人的首选。”

中级程序员和初级程序员的差别在哪里?
项目经验。毕向东表示,“中级程序员和初级程序员最大的差别在于中级程序员比初级程序员多了三四年的工作经验,从而多出了更多的项目经验。“为此,传智播客研究院引进曾在知名IT企业如阿里、IBM就职的高级技术专家,集中研发面向中高级程序员的课程,用以满足企业用人需求,尽快补全IT行业所需的人才缺口。

何为中高级程序员课程?

传智播客进行了定义。中高级程序员课程,是在当前主流的初级程序员课程的基础上,增加多领域多行业的含金量项目,从技术的广度和深度上进行拓展“我们希望用5年的时间,打造上百个高含金量的项目,覆盖主流的32个行业。”传智播客课程研发总监于洋表示。




黑马程序员热门视频教程

Python入门教程完整版(懂中文就能学会) 零起点打开Java世界的大门
C++| 匠心之作 从0到1入门学编程 PHP|零基础入门开发者编程核心技术
Web前端入门教程_Web前端html+css+JavaScript 软件测试入门到精通


在线咨询 我要报名
和我们在线交谈!