1. 程式人生 > >Redis學習筆記--Redis客戶端(三)

Redis學習筆記--Redis客戶端(三)

本機 -c trace 圖形 tro cli family 毫秒 ati

1.Redis客戶端

1.1 Redis自帶的客戶端

  (1)啟動

  啟動客戶端命令:[root@kwredis bin]# ./redis-cli -h 127.0.0.1 -p 6379

  -h:指定訪問的redis服務器的ip地址

  -p:指定訪問的redis服務器的port端口

  還可以寫成:[root@itheima bin]# ./redis-cli

  使用默認配置默認的ip127.0.0.1】,默認的port6379

 (2)關閉

  Ctrl+c或者127.0.0.1:6379> quit

1.2 圖形界面客戶端

  1.下載安裝redis的windows客戶端

  2.安裝之後打開,創建數據庫(redis安裝在虛擬機中)

   需要輸入ip(虛擬機的ip)、端口號(未修改就是6379)

   註意:重要的事情要去做,關閉防火墻,或者配置防火墻,對指定ip進行放行,我為了簡單,一般都是直接關閉,並且在本機,也不去連公網,所以直接關閉就可以了。

  3.然後打開新建的數據庫,會發現有16個數據庫,這些數據庫在沒有指定的情況下,就使用的是第一個數據庫,bin目錄下的redis.conf可以修改數據庫的數量。

  4.數據庫的選擇方式 127.0.0.1:6379>select 15,就可以使用這個數據庫了。

1.3jedis客戶端

  它不僅僅可以通過指令來操作數據,也可以通過流行語言進行客戶端的支持。

單實例連接redis

public void fun()
    {
        //獲取實例
        Jedis jedis=new Jedis("192.168.43.40",6379);
        //向jedis中設置值
        jedis.set("s1", "XXX");
        //獲取值
        String s1=jedis.get("s1");
        System.out.println("RedisClient.fun()"+s1);
        jedis.close();
    }

spring整合jedispool

在配置文件中添加

    <!-- 連接池配置 -->
    <bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
        <!-- 最大連接數 -->
        <property name="maxTotal" value="30" />
        <!-- 最大空閑連接數 -->
        <property name="maxIdle" value="10" />
        <!-- 每次釋放連接的最大數目 -->
        <property name="numTestsPerEvictionRun" value="1024" />
        <!-- 釋放連接的掃描間隔(毫秒) -->
        <property name="timeBetweenEvictionRunsMillis" value="30000" />
        <!-- 連接最小空閑時間 -->
        <property name="minEvictableIdleTimeMillis" value="1800000" />
        <!-- 連接空閑多久後釋放, 當空閑時間>該值 且 空閑連接>最大空閑連接數 時直接釋放 -->
        <property name="softMinEvictableIdleTimeMillis" value="10000" />
        <!-- 獲取連接時的最大等待毫秒數,小於零:阻塞不確定的時間,默認-1 -->
        <property name="maxWaitMillis" value="1500" />
        <!-- 在獲取連接的時候檢查有效性, 默認false -->
        <property name="testOnBorrow" value="false" />
        <!-- 在空閑時檢查有效性, 默認false -->
        <property name="testWhileIdle" value="true" />
        <!-- 連接耗盡時是否阻塞, false報異常,ture阻塞直到超時, 默認true -->
        <property name="blockWhenExhausted" value="false" />
    </bean>

    <!-- redis單機 通過連接池 -->
    <bean id="jedisPool" class="redis.clients.jedis.JedisPool"
        destroy-method="close">
        <constructor-arg name="poolConfig" ref="jedisPoolConfig" />
        <constructor-arg name="host" value="ip地址" />
        <constructor-arg name="port" value="端口號" />
    </bean>

測試代碼

 1 public void testJedisPool() {
 2         JedisPool pool = (JedisPool) applicationContext.getBean("jedisPool");
 3         Jedis jedis = null;
 4         try {
 5             jedis = pool.getResource();
 6 
 7             jedis.set("name", "XXX");
 8             String name = jedis.get("name");
 9             System.out.println(name);
10         } catch (Exception ex) {
11             ex.printStackTrace();
12         } finally {
13             if (jedis != null) {
14                 // 關閉連接
15                 jedis.close();
16             }
17         }
18     }

Redis學習筆記--Redis客戶端(三)