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
使用默認配置:默認的ip【127.0.0.1】,默認的port【6379】
(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 }