關於redis的詳解

一.概念。

redis是一款高性能的NOSQL系列的非關係型數據庫。

關於redis的詳解

二.下載安裝。

  1、redis有中文網。

  2、解壓直接可以使用。

    *redis.windows.conf :配置文件。

    *redis-cli.exe : redis的客戶端。

    * redis-server.exe :redis 服務器端。

三.命令操作。

  1、redis的數據結構:鍵值對格式,key是字符串類型,value有5中類型:

    *字符串類型 string

    * 哈希類型 hash : map格式

    * 列表類型 list : linkedlist 格式

    * 集合類型 set

    * 有序集合類型 sortedset

  2、字符串類型 string:

    *存儲: set key value  

    * 獲取: get key

    * 刪除:del key

  3、哈希類型 hash:

    *存儲: hset key field value 

    * 獲取: hget key field hgetall key

    * 刪除:hdel key field

  4、列表類型 list : 可添加一個元素到一個列表的頭部或尾部。如果又添加,是以“擠進 去”的方式。

    * 添加:1、lpush key value 2、rpush key value

    * 獲取: lrange key start end :範圍獲取。

    * 刪除:lpop key rpop key 刪除元素並將其返回。

  5、集合類型 set :無序、不允許元素重複。

    * 存儲: sadd key value

     * 獲取:smembers key 獲取集合所有元素。

    * 刪除;srem key value : 刪除集合某個元素。

  6、有序集合 sortedset : 不允許元素重複,但有序。 根據score 排序
    * 存儲 : zadd key score value

    * 獲取 : zrange key start end

    * 刪除: zrem key value

  7、通用命令。

     keys :查詢所有鍵

    * type key : 獲取key 對應value 的類型。

    * del key : 刪除指定鍵值對。

四.持久化。

  1、redis 是一個內存數據庫,當redis 服務器重啓,或電腦重啓,數據會丟失,所以需要持久化到硬盤

  2、redis 持久化機制:

    * RDB :默認方式,不需要配置。在一定時間內檢測到key的變化情況後,持久化數據。  

      編輯redis.windows.conf 文件:

        save 900 1
        save 300 10
        save 60 10000

        意思:多少秒內,至少多少鍵發生變化了,就持久化一次。

    * AOF :日誌記錄的方式,可以記錄每一條命令的操作。可每一次操作命令後,持久化數據。

      編輯 redis.windows.conf 文件:

        設置 appendonly yes (開啓 aof )        

        # appendfsync always:每一次操作都持久化
        appendfsync everysec:每一秒進行一次持久化

        # appendfsync no:   不持久化

五.Java客戶端 Jedis。

  * Jedis :一款Java操作redis數據庫的工具

  * 使用步驟:先導入jar包 兩個:jedis和jedis pool

    1、獲取連接:Jedis jedis=new Jedis("localhost",6379); 空參默認是本機的。

    2、操作:方法名和命令行一樣。

    3、關閉連接:jedis.close();  

  * 一些其他方法:

    1、jedis.setex("activecode",20,"rt") :存入鍵值對,並在20秒後自動刪除。  

  * Jedis連接池:

    1、創建一個配置對象:

      JedisPoolConfig config =new JedisPoolConfig();

      config.setMaxTotal(20) ; config.setMaxIdle(10) ...........

    2、創建Jedis連接池對象。

      JedisPool jp=new JedisPool(config,"localhost",6379)

    3、獲取連接。

      Jedis jedis=jp.getResource()

    4、使用。

    5、歸還到連接池。 jedis.close();

  * 自定義jedis 工具類。

  * redis的應用:用redis緩存一些不經常發生變化的數據。

六.案例

  需求:提供index.html頁面,有一個省份下拉列表,頁面加載完後,發送Ajax,加載所有省份。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章