chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Java 使用Redis緩存工具的詳細(xì)解說

lhl545545 ? 來源:電子發(fā)燒友網(wǎng) ? 2018-02-09 14:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Java 使用Redis緩存工具的詳細(xì)解說

開始在 Java 中使用 Redis 前, 我們需要確保已經(jīng)安裝了 redis 服務(wù)及 Java redis 驅(qū)動,且你的機(jī)器上能正常使用 Java。

(1)Java的安裝配置可以參考我們的 Java開發(fā)環(huán)境配置

(2)安裝了 redis 服務(wù);

請參考:Windows環(huán)境下使用Redis緩存工具的圖文詳細(xì)方法(http://www.brongaenegriffin.com/d/633308.html)

或是:

首先你需要下載驅(qū)動包,下載 jedis.jar,確保下載最新驅(qū)動包。

在你的classpath中包含該驅(qū)動包。

一、新建一個(gè)javaweb項(xiàng)目。

1. 新建一個(gè)Jedis的項(xiàng)目。

Java 使用Redis緩存工具的詳細(xì)解說
Java 使用Redis緩存工具的詳細(xì)解說

效果如下:

Java 使用Redis緩存工具的詳細(xì)解說

二、下載redis依賴包。

http://yunpan.cn/c36syrdrC6MDx 訪問密碼 0cd6

三、實(shí)戰(zhàn)案例

1. 連接本地的 Redis 服務(wù)和查看服務(wù)是否運(yùn)行

package com.souvc.redis;

import redis.clients.jedis.Jedis;

/**

* 類名: RedisJava

* 包名: com.souvc.redis

* 描述: 連接本地的 Redis 服務(wù)和查看服務(wù)是否運(yùn)行 《/br>

* 開發(fā)人員: souvc

* 創(chuàng)建時(shí)間: 2015-12-9

* 發(fā)布版本:V1.0

*/

public class RedisJava {

public static void main(String[] args) {

// 連接本地的 Redis 服務(wù)

Jedis jedis = new Jedis(“l(fā)ocalhost”);

System.out.println(“連接本地的 Redis 服務(wù)成功!”);

// 查看服務(wù)是否運(yùn)行

System.out.println(“服務(wù) 正在運(yùn)行: ” + jedis.ping());

}

}

效果如下:

Java 使用Redis緩存工具的詳細(xì)解說

為什么會報(bào)錯(cuò),是我們忘了開redis服務(wù)了。

Java 使用Redis緩存工具的詳細(xì)解說
Java 使用Redis緩存工具的詳細(xì)解說

重新運(yùn)行,發(fā)現(xiàn):

連接本地的 Redis 服務(wù)成功!

Server is running: PONG

以后,我們需要用redis,需要開啟這個(gè)服務(wù)。

2. Redis Java String(字符串) 實(shí)例

package com.souvc.redis;

import redis.clients.jedis.Jedis;

/**

* 類名: RedisJava

* 包名: com.souvc.redis

* 描述: Redis Java String(字符串) 實(shí)例

* 開發(fā)人員: souvc

* 創(chuàng)建時(shí)間: 2015-12-9

* 發(fā)布版本:V1.0

*/

public class RedisStringJava {

public static void main(String[] args) {

// 連接本地的 Redis 服務(wù)

Jedis jedis = new Jedis(“l(fā)ocalhost”);

System.out.println(“連接本地的 Redis 服務(wù)成功!”);

// 設(shè)置 redis 字符串?dāng)?shù)據(jù)

jedis.set(“souvc”, “http://www.cnblogs.com/liuhongfeng/”);

// 獲取存儲的數(shù)據(jù)并輸出

System.out.println(“redis存儲的字符串是: ” + jedis.get(“souvc”));

}

}

效果如下:

連接本地的 Redis 服務(wù)成功!

redis存儲的字符串是: http://www.cnblogs.com/liuhongfeng/

3. Redis Java List(列表) 實(shí)例 (1)

package com.souvc.redis;

import java.util.List;

import redis.clients.jedis.Jedis;

/**

* 類名: RedisListJava

* 包名: com.souvc.redis

* 描述: Redis Java List(列表) 實(shí)例

* 開發(fā)人員: souvc

* 創(chuàng)建時(shí)間: 2015-12-9

* 發(fā)布版本:V1.0

*/

public class RedisListJava {

public static void main(String[] args) {

// 連接本地的 Redis 服務(wù)

Jedis jedis = new Jedis(“l(fā)ocalhost”);

System.out.println(“連接本地的 Redis 服務(wù)成功!”);

// 存儲數(shù)據(jù)到列表中

jedis.lpush(“kecheng”, “java”);

jedis.lpush(“kecheng”, “php”);

jedis.lpush(“kecheng”, “Mysql”);

// 獲取存儲的數(shù)據(jù)并輸出

List《String> list = jedis.lrange(“kecheng”, 0, 5);

for (int i = 0; i< list.size(); i++) {

System.out.println(“redis list里面存儲的值是:” + list.get(i));

}

}

}

效果如下:

連接本地的 Redis 服務(wù)成功!

redis list里面存儲的值是:Mysql

redis list里面存儲的值是:php

redis list里面存儲的值是:java

Redis Java List(列表) 實(shí)例 (2)

package com.souvc.redis;

import redis.clients.jedis.Jedis;

public class RedisListJava2 {

/**

* 方法名:main

* 詳述:Redis Java List(列表) 實(shí)例 2

* 開發(fā)人員:souvc

* 創(chuàng)建時(shí)間:2015-12-9

* @param args 說明返回值含義

* @throws 說明發(fā)生此異常的條件

*/

public static void main(String[] args) {

// 連接本地的 Redis 服務(wù)

Jedis jedis = new Jedis(“l(fā)ocalhost”);

System.out.println(“連接本地的 Redis 服務(wù)成功!”);

//開始前,先移除所有的內(nèi)容

jedis.del(“java framework”);

System.out.println(jedis.lrange(“java framework”,0,-1));

//先向key java framework中存放三條數(shù)據(jù)

jedis.lpush(“java framework”,“spring”);

jedis.lpush(“java framework”,“struts”);

jedis.lpush(“java framework”,“hibernate”);

//再取出所有數(shù)據(jù)jedis.lrange是按范圍取出,

// 第一個(gè)是key,第二個(gè)是起始位置,第三個(gè)是結(jié)束位置,jedis.llen獲取長度 -1表示取得所有

System.out.println(jedis.lrange(“java framework”,0,-1));

jedis.del(“java framework”);

jedis.rpush(“java framework”,“spring”);

jedis.rpush(“java framework”,“struts”);

jedis.rpush(“java framework”,“hibernate”);

System.out.println(jedis.lrange(“java framework”,0,-1));

}

}

效果如下:

連接本地的 Redis 服務(wù)成功!

[]

[hibernate, struts, spring]

[spring, struts, hibernate]

4. Redis Java Map 實(shí)例

package com.souvc.redis;

import java.util.HashMap;

import java.util.Iterator;

import java.util.List;

import java.util.Map;

import redis.clients.jedis.Jedis;

public class RedisMapJava {

/**

* 方法名:main

* 詳述:redis操作Map

* 開發(fā)人員:souvc

* 創(chuàng)建時(shí)間:2015-12-10

* @param args 說明返回值含義

* @throws 說明發(fā)生此異常的條件

*/

public static void main(String[] args) {

// 連接本地的 Redis 服務(wù)

Jedis jedis = new Jedis(“l(fā)ocalhost”);

System.out.println(“連接本地的 Redis 服務(wù)成功!”);

//-----添加數(shù)據(jù)----------

Map map = new HashMap();

map.put(“name”, “xinxin”);

map.put(“age”, “22”);

map.put(“qq”, “123456”);

jedis.hmset(“user”,map);

//取出user中的name,執(zhí)行結(jié)果:[minxr]-->注意結(jié)果是一個(gè)泛型的List

//第一個(gè)參數(shù)是存入redis中map對象的key,后面跟的是放入map中的對象的key,后面的key可以跟多個(gè),是可變參數(shù)

Listrsmap = jedis.hmget(“user”, “name”, “age”, “qq”);

System.out.println(rsmap);

//刪除map中的某個(gè)鍵值

jedis.hdel(“user”,“age”);

System.out.println(jedis.hmget(“user”, “age”)); //因?yàn)閯h除了,所以返回的是null

System.out.println(jedis.hlen(“user”)); //返回key為user的鍵中存放的值的個(gè)數(shù)2

System.out.println(jedis.exists(“user”));//是否存在key為user的記錄 返回true

System.out.println(jedis.hkeys(“user”));//返回map對象中的所有key

System.out.println(jedis.hvals(“user”));//返回map對象中的所有value

Iterator《String> iter=jedis.hkeys(“user”).iterator();

while (iter.hasNext()){

String key = iter.next();

System.out.println(key+“:”+jedis.hmget(“user”,key));

}

}

}

效果:

連接本地的 Redis 服務(wù)成功!

[xinxin, 22, 123456]

[null]

2

true

[qq, name]

[123456, xinxin]

qq:[123456]

name:[xinxin]

5. Redis Java Set 實(shí)例

package com.souvc.redis;

import redis.clients.jedis.Jedis;

public class RedisSetJava {

/**

* 方法名:main

* 詳述:Redis Java Set 實(shí)例

* 開發(fā)人員:souvc

* 創(chuàng)建時(shí)間:2015-12-10

* @param args 說明返回值含義

* @throws 說明發(fā)生此異常的條件

*/

public static void main(String[] args) {

// 連接本地的 Redis 服務(wù)

Jedis jedis = new Jedis(“l(fā)ocalhost”);

System.out.println(“連接本地的 Redis 服務(wù)成功!”);

//刪除map中的某個(gè)鍵值

//jedis.hdel(“user”);

//添加

jedis.sadd(“user”,“l(fā)iuling”);

jedis.sadd(“user”,“xinxin”);

jedis.sadd(“user”,“l(fā)ing”);

jedis.sadd(“user”,“zhangxinxin”);

jedis.sadd(“user”,“who”);

//移除noname

jedis.srem(“user”,“who”);

System.out.println(jedis.smembers(“user”));//獲取所有加入的value

System.out.println(jedis.sismember(“user”, “who”));//判斷 who 是否是user集合的元素

System.out.println(jedis.srandmember(“user”));

System.out.println(jedis.scard(“user”));//返回集合的元素個(gè)數(shù)

}

}

效果如下:

連接本地的 Redis 服務(wù)成功!

[xinxin, liuling, ling, zhangxinxin]

false

ling

4

5. Redis Java Sort實(shí)例

package com.souvc.redis;

import redis.clients.jedis.Jedis;

public class RedisSortJava {

/**

* 方法名:main

* 詳述:jedis 排序

* 開發(fā)人員:souvc

* 創(chuàng)建時(shí)間:2015-12-10

* @param args 說明返回值含義

* @throws 說明發(fā)生此異常的條件

*/

public static void main(String[] args) {

// 連接本地的 Redis 服務(wù)

Jedis jedis = new Jedis(“l(fā)ocalhost”);

System.out.println(“連接本地的 Redis 服務(wù)成功!”);

//jedis 排序

//注意,此處的rpush和lpush是List的操作。是一個(gè)雙向鏈表(但從表現(xiàn)來看的)

jedis.del(“a”);//先清除數(shù)據(jù),再加入數(shù)據(jù)進(jìn)行測試

jedis.rpush(“a”, “1”);

jedis.lpush(“a”,“6”);

jedis.lpush(“a”,“3”);

jedis.lpush(“a”,“9”);

System.out.println(jedis.lrange(“a”,0,-1));// [9, 3, 6, 1]

System.out.println(jedis.sort(“a”)); //[1, 3, 6, 9] //輸入排序后結(jié)果

System.out.println(jedis.lrange(“a”,0,-1));

}

}

效果:

連接本地的 Redis 服務(wù)成功!

[9, 3, 6, 1]

[1, 3, 6, 9]

[9, 3, 6, 1]

注意:如果是出現(xiàn)這個(gè)錯(cuò)誤,那么是因?yàn)樵O(shè)置了密碼。

Java 使用Redis緩存工具的詳細(xì)解說

我們需要加上一個(gè)auth方法進(jìn)行校驗(yàn)。

// 連接本地的 Redis 服務(wù)

Jedis jedis = new Jedis(“l(fā)ocalhost”);

//jedis.auth(“souvc”);

System.out.println(“連接本地的 Redis 服務(wù)成功!”);

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • JAVA
    +關(guān)注

    關(guān)注

    20

    文章

    2989

    瀏覽量

    109575
  • Redis
    +關(guān)注

    關(guān)注

    0

    文章

    386

    瀏覽量

    11440
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    Redis集群部署與性能優(yōu)化實(shí)戰(zhàn)

    Redis作為高性能的內(nèi)存數(shù)據(jù)庫,在現(xiàn)代互聯(lián)網(wǎng)架構(gòu)中扮演著關(guān)鍵角色。作為運(yùn)維工程師,掌握Redis的部署、配置和優(yōu)化技能至關(guān)重要。本文將從實(shí)戰(zhàn)角度出發(fā),詳細(xì)介紹Redis集群的搭建、性
    的頭像 發(fā)表于 07-08 17:56 ?219次閱讀

    harmony-utils之CacheUtil,緩存工具

    harmony-utils之CacheUtil,緩存工具
    的頭像 發(fā)表于 07-04 16:36 ?117次閱讀

    【幸狐Omni3576邊緣計(jì)算套件試用體驗(yàn)】Redis最新8.0.2版本源碼安裝及性能測試

    engine, and message broker. 數(shù)以百萬計(jì)的開發(fā)人員用作數(shù)據(jù)庫、緩存、流式處理引擎和消息代理的開源內(nèi)存數(shù)據(jù)存儲。 二、源碼編譯Redis 2.1 安裝git和編譯工具鏈 # 安裝
    發(fā)表于 06-03 01:28

    HarmonyOS5云服務(wù)技術(shù)分享--云緩存快速上手指南

    Redis@2024) 二、實(shí)戰(zhàn)代碼:Node.js篇 通過ioredis庫連接云緩存,只需三步: const Redis = require(\'ioredis\'); const redisClient
    發(fā)表于 05-22 18:37

    Java開發(fā)者必備的效率工具——Perforce JRebel是什么?為什么很多Java開發(fā)者在用?

    Perforce JRebel是一款Java開發(fā)效率工具,旨在幫助java開發(fā)人員更快地編寫更好的應(yīng)用程序。JRebel可即時(shí)重新加載對代碼的修改,無需重啟或重新部署應(yīng)用程序,就能讓開發(fā)者即時(shí)看到代碼更改的效果,從而縮短開發(fā)、調(diào)
    的頭像 發(fā)表于 04-27 13:44 ?257次閱讀
    <b class='flag-5'>Java</b>開發(fā)者必備的效率<b class='flag-5'>工具</b>——Perforce JRebel是什么?為什么很多<b class='flag-5'>Java</b>開發(fā)者在用?

    Redis實(shí)戰(zhàn)筆記

    在目前的技術(shù)選型中,Redis 儼然已經(jīng)成為了系統(tǒng)高性能緩存方案的事實(shí)標(biāo)準(zhǔn),因此現(xiàn)在?Redis 也成為了后端開發(fā)的基本技能樹之一。 ? 基于上述情況,今天給大家分享一份?杰哥?親筆撰寫的內(nèi)部
    的頭像 發(fā)表于 02-09 09:12 ?390次閱讀
    <b class='flag-5'>Redis</b>實(shí)戰(zhàn)筆記

    Redis Cluster之故障轉(zhuǎn)移

    1. Redis Cluster 簡介 Redis Cluster 是 Redis 官方提供的 Redis 集群功能。 為什么要實(shí)現(xiàn) Redis
    的頭像 發(fā)表于 01-20 09:21 ?885次閱讀
    <b class='flag-5'>Redis</b> Cluster之故障轉(zhuǎn)移

    基于javaPoet的緩存key優(yōu)化實(shí)踐

    數(shù)據(jù)庫中的熱數(shù)據(jù)緩存redis/本地緩存中,代碼如下: ? @Cacheable(value = { "per" }, key="#person.getId
    的頭像 發(fā)表于 01-14 15:18 ?819次閱讀
    基于javaPoet的<b class='flag-5'>緩存</b>key優(yōu)化實(shí)踐

    Redis緩存與Memcached的比較

    Redis和Memcached都是廣泛使用的內(nèi)存數(shù)據(jù)存儲系統(tǒng),它們主要用于提高應(yīng)用程序的性能,通過減少對數(shù)據(jù)庫的直接訪問來加速數(shù)據(jù)檢索。以下是對Redis和Memcached的比較,涵蓋了它們的一些
    的頭像 發(fā)表于 12-18 09:33 ?585次閱讀

    緩存之美——如何選擇合適的本地緩存?

    Guava cache是Google開發(fā)的Guava工具包中一套完善的JVM本地緩存框架,底層實(shí)現(xiàn)的數(shù)據(jù)結(jié)構(gòu)類似于ConcurrentHashMap,但是進(jìn)行了更多的能力拓展,包括緩存過期時(shí)間設(shè)置、
    的頭像 發(fā)表于 11-17 14:24 ?816次閱讀
    <b class='flag-5'>緩存</b>之美——如何選擇合適的本地<b class='flag-5'>緩存</b>?

    基于Java工具Power Stage Designer

    電子發(fā)燒友網(wǎng)站提供《基于Java工具Power Stage Designer.pdf》資料免費(fèi)下載
    發(fā)表于 11-14 16:01 ?10次下載
    基于<b class='flag-5'>Java</b>的<b class='flag-5'>工具</b>Power Stage Designer

    使用Arthas火焰圖工具Java應(yīng)用性能分析和優(yōu)化經(jīng)驗(yàn)

    分享作者在使用Arthas火焰圖工具進(jìn)行Java應(yīng)用性能分析和優(yōu)化的經(jīng)驗(yàn)。
    的頭像 發(fā)表于 10-28 09:27 ?1274次閱讀
    使用Arthas火焰圖<b class='flag-5'>工具</b>的<b class='flag-5'>Java</b>應(yīng)用性能分析和優(yōu)化經(jīng)驗(yàn)

    聊聊緩存擊穿的解決方法

    緩存擊穿,Redis中的某個(gè)熱點(diǎn)key不存在或者過期,但是此時(shí)有大量的用戶訪問該key。比如xxx直播間優(yōu)惠券搶購、xxx商品活動,這時(shí)候大量用戶會在某個(gè)時(shí)間點(diǎn)一同訪問該熱點(diǎn)事件。但是可能
    的頭像 發(fā)表于 10-23 13:54 ?525次閱讀

    什么是CPU緩存?它有哪些作用?

    CPU緩存(Cache Memory)是計(jì)算機(jī)系統(tǒng)中一個(gè)至關(guān)重要的組成部分,它位于CPU與內(nèi)存之間,作為兩者之間的臨時(shí)存儲器。CPU緩存的主要作用是減少CPU訪問內(nèi)存所需的時(shí)間,從而提高系統(tǒng)的整體性能。以下將詳細(xì)闡述CPU
    的頭像 發(fā)表于 08-22 14:54 ?6103次閱讀

    華納云:java web和java有什么區(qū)別java web和java有什么區(qū)別

    Java Web和Java是兩個(gè)不同的概念,它們在功能、用途和實(shí)現(xiàn)方式上存在一些區(qū)別,下面將詳細(xì)介紹它們之間的區(qū)別。 1. 功能和用途: – Java是一種編程語言,它提供了一種用于開
    的頭像 發(fā)表于 07-16 13:35 ?1447次閱讀
    華納云:<b class='flag-5'>java</b> web和<b class='flag-5'>java</b>有什么區(qū)別<b class='flag-5'>java</b> web和<b class='flag-5'>java</b>有什么區(qū)別