您好,登錄后才能下訂單哦!
這篇文章給大家介紹怎樣使用Java操作redis,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
Redis的知識我們已經介紹的差不多了,我們來看看如何使用Java操作redis。
查看redis官網,我們發現用Java操作redis,我們有多種解決方案,如下圖:
這里的解決方案有多種,我們采用Jedis,其他的框架也都大同小異,我這里權當拋磚引玉,小伙伴也可以研究研究其他的方案,歡迎投稿。
客戶端要能夠成功連接上redis服務器,需要檢查如下三個配置:
1.遠程Linux防火墻已經關閉,以我這里的CentOS7為例,關閉防火墻命令
systemctl stop firewalld.service
同時還可以再補一刀
systemctl disable firewalld.service
表示禁止防火墻開機啟動。
2.關閉redis保護模式,在redis.conf文件中,修改protected為no,如下:
protected-mode no
3.注釋掉redis的ip地址綁定,還是在redis.conf中,將bind:127.0.0.1注釋掉,如下:
# bind:127.0.0.1
確認了這三步之后,就可以遠程連接redis了。
上面的配置完成后,我們可以創建一個普通的JavaSE工程來測試下了,Java工程創建成功后,添加Jedis依賴,如下:
<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency>
然后我們可以通過如下一個簡單的程序測試一下連接是否成功:
public static void main(String[] args) { Jedis jedis = new Jedis("192.168.248.128", 6379); String ping = jedis.ping(); System.out.println(ping); }
運行之后,看到如下結果表示連接成功了:
連接成功之后,剩下的事情就比較簡單了,Jedis類中方法名稱和redis中的命令基本是一致的,看到方法名小伙伴就知道是干什么的,因此這些我這里不再重復敘述。
頻繁的創建和銷毀連接會影響性能,我們可以采用連接池來部分的解決這個問題:
public static void main(String[] args) { GenericObjectPoolConfig config = new GenericObjectPoolConfig(); config.setMaxTotal(100); config.setMaxIdle(20); JedisPool jedisPool = new JedisPool(config, "192.168.248.128", 6379); Jedis jedis = jedisPool.getResource(); System.out.println(jedis.ping()); }
這樣就不會頻繁創建和銷毀連接了,在JavaSE環境中可以把連接池配置成一個單例模式,如果用了Spring容器的話,可以把連接池交給Spring容器管理。
上面這種連接都是連接單節點的Redis,如果是一個Redis集群,要怎么連接呢?很簡單,如下:
Set<HostAndPort> clusterNodes = new HashSet<HostAndPort>(); clusterNodes.add(new HostAndPort("192.168.248.128", 7001)); clusterNodes.add(new HostAndPort("192.168.248.128", 7002)); clusterNodes.add(new HostAndPort("192.168.248.128", 7003)); clusterNodes.add(new HostAndPort("192.168.248.128", 7004)); clusterNodes.add(new HostAndPort("192.168.248.128", 7005)); clusterNodes.add(new HostAndPort("192.168.248.128", 7006)); JedisCluster jc = new JedisCluster(clusterNodes); jc.set("address", "深圳"); String address = jc.get("address"); System.out.println(address);
JedisCluster中的方法與Redis命令也是基本一致,我就不再重復介紹了。
關于怎樣使用Java操作redis就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。