大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java開發數據庫教程: Redis數據類型介紹

Java開發數據庫教程: Redis數據類型介紹

更新時間:2020-07-27 15:12:45 來源:動力節點 瀏覽1976次

Redis作為緩存具有極其豐富的功能,比如計數器、好友關系以及排行榜等等。而Redis之所能夠實現如此強大的功能,完全是依賴著它的基本數據結構。今天我們來看看Redis的五種基本的數據結構,分別是字符串(strings),散列(hashes),列表(lists)。

Java開發數據庫教程: Redis數據類型介紹

1、字符串(strings)

絕大部分編程語言中都少不了的基本數據類型就是字符串(strings),數據庫Redis也不例外。下面我們來看一下關于字符串的基本操作:

set key value設置值

get key獲取某個key的值

mset key1 value1 key2 value2批量設置并且是原子的,可以用來減少網絡時間消耗

mget key1 key2批量獲取并且是原子的,可以用來減少網絡時間消耗

incr key自增指定key的值

decr key自減指定key的值

incrby key value自增指定數值

decrby key value自減指定數值

incrbyfloat key floatvalue增加指定浮點數,前面幾個操作就可以用來實現計數器的功能。

setnx key value如果不存在該key則可以設置成功,否則會失敗,加上過期時間限制,則是redis實現分布式鎖的一種方式(后面會提到)。

set key value xx與前面相反,如果存在則設置成功,否則失敗(相當于更新操作)

2、散列(hashes)

我們可以把hash理解為小型Redis,Redis在底層實現上和Java中的HashMap差不多,都是使用數組+鏈表的二維結構實現的。不一樣的是,在Redis中字典的值只能是字符串,而且他們rehash的方式也不同,在Redis中使用的是漸進式rehash。

hset key field value設置字典中某個key的值

hsetnx key field value設置字典中某個key的值(不存在的)

hmset key field1 value1 field2 value2…批量設置

hget key field獲取字典中某個key的值

hmget key field1 field2批量獲取

hgetall key獲取全部

hdel key field刪除某個key

hexists key field判斷是否存在

hlen key獲取指定key對應的字典中的存儲個數

hvals key返回所有的value

hkeys key返回所有的key

hincrby key field increValue增加某個value的值(也可以增加負數)

hincrbyfloat key field floatValue增加某個value的值(浮點數)

3、列表(lists)

Redis中的列表相當于Java中的LinkedList,也就是底層是通過鏈表來實現的,所以對于list來說插入刪除操作很快,但索引定位非常慢。Redis提供了許多對于list的操作,如出入等操作,你可以充分利用它們來實現一個棧或者隊列。

lpush key item1 item2 item3…從左入棧

rpush key item1 item2 item3…從右入棧

lpop key從左出棧

rpop key從右出棧

lindex key index獲取指定索引的元素O(n)謹慎使用

lrange key start end獲取指定范圍的元素O(n)謹慎使用

linsert key before|after item newitem在指定元素的前面或者后面添加新元素

lrem key count value刪除指定個數值為value的元素

count=0:刪除所有值為value的元素

count>0:從左到右刪除count個值為value的元素

count<0:從右到做刪除|count|個值為value的元素

ltrim key start end保留指定范圍的元素

lset key index newValue更新某個索引的值

blpop key timeout沒有則阻塞(timeout指定阻塞時間為0代表永久)

brpop key timeout沒有則阻塞(timeout指定阻塞時間為0代表永久)這兩個可以用來實現消費者生產者

Java開發數據庫教程: Redis數據類型介紹

Java視頻教程

Redis視頻:http://www.dabaquan.cn/javavideo/130.html

以上就是動力節點java培訓機構的小編針對“Java開發數據庫教程: Redis數據類型介紹”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 99日精品欧美国产 | 大乳欲妇三级一区二区三区 | 日本一级毛片免费 | 欧美亚洲日本国产 | 亚洲国产成人精品区 | 天天久久综合网站 | 四虎影院在线免费观看视频 | 国产在视频线精品www666 | 视频大全在线观看免费 | 香蕉久久国产 | 夜夜爱夜夜做 | 久久久久久久久国产 | 欧美精品亚洲人成在线观看 | 国产黄色影院 | 日本h片a毛片在线播放 | 狠狠色综合久久婷婷 | 亚洲精品一区二区不卡 | 欧美一区永久视频免费观看 | 亚洲国产韩国一区二区 | 偷偷操不一样的久久 | 成人爽a毛片在线视频网站 成人爽视频 | 狠狠r| 思思久久99热这里只有精品66 | 天天干狠狠操 | 老司机深夜影院入口aaaa | 欧美黑人喷潮水xxxx | 天天干天天色天天射 | 国产免费成人在线视频 | 亚洲一区 中文字幕 | 成人午夜影院在线观看 | 深夜男人网站 | 午夜美女久久久久爽久久 | 99热久久这里只有精品 | 国产精品亚洲精品日韩已满 | 亚洲成人黄色在线 | 国产亚洲精品中文带字幕21页 | 99在线观看免费视频 | 欧美一级精品高清在线观看 | 日韩亚洲欧美一区二区三区 | 亚洲国产美女视频 | 久久成人免费播放网站 |