SpringBoot整合Redis 學習筆記

2021-10-09 08:31:04 字數 4084 閱讀 3920

修改服務埠號,修改資料庫url位址值

說明:修改配置路徑的檔案 image.properties檔案.

#properties的作用就是封裝key=value 業務資料

模擬伺服器位址值

這裡注意,在父工程pom檔案中引入

<

!--spring整合redis --

>

redis.clients<

/groupid>

jedis<

/artifactid>

<

/dependency>

org.springframework.data<

/groupid>

spring-data-redis<

/artifactid>

<

/dependency>

jedis jedis = new jedis(host: ,port: );

在實際開發中通常配 .properties檔案指向路徑(下文中有講)

//@springboottest //如果需要在測試類中引入spring容器機制才使用該註解

public

class

testredis

/** * string型別api學習

* 需求: 判斷key是否存在於redis.如果存在則不賦值,否則入庫.**/

@test

public

void

test02()

else

system.out.

println

(jedis.

get(

"redis"))

;}//可以利用優化的api實現業務功能.

//業務: 如果資料存在則不賦值

@test

public

void

test03()

/** * 測試新增超時時間的有效性.

* 業務: 向redis中儲存乙個資料之後,要求設定10秒有效.

* 原子性: 要麼同時成功,要麼同時失敗.

*/@test

public

void

test04()

/** * 需求: 要求新增乙個資料,只有資料存在時才會賦值,並且需要新增超時時間

* 保證原子性操作.

* private static final string xx = "xx"; 有key的時候才賦值

* private static final string nx = "nx"; 沒有key時才賦值

* private static final string px = "px"; 毫秒

* private static final string ex = "ex"; 秒

* redis分布式鎖的問題

* */

@test

public

void

test05()

@test

public

void

testlist()

/** * 控制redis事務

* 說明:操作redisredis適用於事務控制

* 但是如果是多台redis則不太適用事務.

* */

@test

public

void

testtx()

catch

(exception e)

}}

說明:由於redis之後會被其他的伺服器適用,所以最好的方式將redis的配置類儲存到通用配置中.(例如: redis.properties 中)

1.3.2 編輯.properties配置檔案

類上面用@propertysource(「classpath:/ 指向對應的properties檔案路徑」)

成員變數上用@value註解,指向配置檔案中的key

@configuration

//標識我是乙個配置類

@propertysource

("classpath:/properties/redis.properties"

)public

class

jedisconfig")

private string host;

@value

("$"

)private integer port;

/** * 將jedis物件交給spring容器管理

*/@bean

public jedis jedis()

}

說明:在common通用包中新增工具api物件

public

class

writevalueasstring

(object);}

catch

(jsonprocessingexception e)

}}

//2.將任意的json串轉化為物件  傳遞什麼型別轉化什麼物件

private

static

new();

public

static

t toobject

(string json,class

target)

trycatch

(jsonprocessingexception e)

}

@test

public

void

test03()

/**

* 關於快取實現業務說明

* 1.應該查詢快取

* 2.判斷快取中是否有資料

* 3.如果沒有資料,則查詢資料庫

* 4.如果有資料,則直接返回資料.

** 思考: redis中主要操作的型別是string型別,業務資料如何於string進行互動!!!!!

* 實現思路: 業務資料 ~~~ json ~~~ string

* @param id

* @return

*/("/list"

)public list

finditemcatlist

(long id)

1.5.2 編輯itemcatservice

/**

* 步驟:

* 先查詢redis快取 k:v

* true 直接返回資料

* false 查詢資料庫

** key有什麼特點: 1.key應該動態變化 2.key應該標識業務屬性

* key=item_cat_parentid::parentid

* @param parentid

* @return

*/@override

public list

finditemcache

(long parentid)

else

return treelist;

}

Redis安裝 spring註解整合Redis

一 windows 下安裝 開啟乙個cmd視窗,使用cd命令切換到檔案目錄e redis,執行redis server.exe redis.windows.conf。後面那個redis.windows.conf可以省略,如果省略,會啟用預設的。輸入之後,會顯示如下介面 這時候另起乙個cmd視窗,原來...

springBoot整合dubbo整合專案

傳統spring 整合dubbo,需要繁瑣的編寫一堆堆的 xml 配置檔案 而springboot整合dubbo後,不在需要寫 xml,通過jar包引用,完 成整合,通過註解的形式完成配置。提高我們的開發效率 目錄結構 1 服務層生產者開發 hs ldm server service 1.1新增du...

SpringBoot整合系列 整合Swagger2

io.springfox springfox swagger2 2.7.0 io.springfox springfox swagger ui 2.7.0 一般無配置項,必要時可以新增自定義配置項,在配置類中讀取 swagger2的配置內容僅僅就是需要建立乙個docket例項 configurati...