02 - redis數據類型

redis 使用的是鍵值對保存數據。(map)

 

key:全部都是字符串

value:有五種數據類型

 

Key名:自定義,key名不要過長,否則影響使用效率

 

Key名不要太短,最好是有意義。

 

4、 redis命令-String命令【重點】

字符串類型是Redis中最爲基礎、常用的數據存儲類型,字符串在Redis中是二進制安全的這便意味着該類型存入和獲取的數據相同。在Redis中字符串類型的Value最多可以容納的數據長度是512M。

 

二進制安全和數據安全是沒有關係的。

MySQL-關係型數據庫,二進制不安全。【亂碼丟失數據】

 

 

 

Redis  二進制數據安全

 

 

賦值:

set key value:設定key持有指定的字符串value,如果該key存在則進行覆蓋操作。總是返回”OK”

  如果賦予相同的key,新的value會覆蓋老的value

 

取值:

get key:獲取key的value。如果與該key關聯的value不是String類型,redis將返回錯誤信息,因爲get命令只能用於獲取String value;如果該key不存在,返回(nil)

 

刪除:

del key :刪除指定key

返回值是數字類型,表示刪了幾條數據

 

 

擴展:

l getset key value:先獲取該key的值,然後在設置該key的值。

l incr key:將指定的key的value原子性的遞增1.如果該key不存在,其初始值爲0,在incr之後其值爲1。如果value的值不能轉成整型,如hello,該操作將執行失敗並返回相應的錯誤信息。

相當於 ++i

 

 

l decr key:將指定的key的value原子性的遞減1.如果該key不存在,其初始值爲0,在incr之後其值爲-1。如果value的值不能轉成整型,如hello,該操作將執行失敗並返回相應的錯誤信息。

相當於 –i

 

 

Incr和decr 只能對字符串是數字的進行操作。

append key value:拼湊字符串。如果該key存在,則在原有的value後追加該值;如果該key不存在,則重新創建一個key/value

 

 

 

String使用環境:

主要用於保存json格式的字符串

 

5、 redis命令-hash(瞭解)

Redis中的Hash類型可以看成具有String Key和String Value的map容器。所以該類型非常適合於存儲值對象的信息。如Username、Password和Age等。如果Hash中包含很少的字段,那麼該類型的數據也將僅佔用很少的磁盤空間。每一個Hash可以存儲4294967295個鍵值對。

Hash  ----à   {username:”張三”,age:”18”,sex:”man”}------javaBean

Hash特點:佔用的磁盤空間極少

 

 

 

賦值:

l hset key field value:爲指定的key設定field/value對(鍵值對)。

hmset key field value [field2 value2 …]:設置key中的多個filed/value

 

 

 

取值:

l hmget key filed1 filed2 ….:獲取key中的多個filed的值

l hgetall key:獲取key中的所有filed-vaule

 

 

 

刪除:

del key :刪除整個hash

 

 

 

擴展:

l hkeys key :獲得所有的字段

l hvals key:獲得所有的value

 

keys * 查詢所有的key

6、 Jedis(java操作redis數據庫技術)【重點】

新建項目並加入jar包

 

 

Redis有什麼命令,Jedis就有什麼方法。

 

 

防火牆設置:

開放6379端口

/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT

保存配置

/etc/rc.d/init.d/iptables save

 

查看數據庫有name字段了,是二進制數據表現形式,客戶端訪問時才解碼顯示中文

 

 

Jedis連接池:

 

抽取連接池工具:

JedisUtils

發佈了14 篇原創文章 · 獲贊 7 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章