Spring Boot中使用Redis資料庫

2022-03-28 03:01:47 字數 2533 閱讀 1969

引入依賴

spring boot提供的資料訪問框架spring data redis基於jedis。可以通過引入spring-boot-starter-redis來配置依賴關係。

org.springframework.boot

spring-boot-starter-redis

引數配置

# redis資料庫索引(預設為0)

spring.redis.database=0

# redis伺服器位址

spring.redis.host=localhost

# redis伺服器連線埠

spring.redis.port=6379

# redis伺服器連線密碼(預設為空)

spring.redis.password=# 連線池最大連線數(使用負值表示沒有限制)

spring.redis.pool.max-active=8

# 連線池最大阻塞等待時間(使用負值表示沒有限制)

spring.redis.pool.max-wait=-1

# 連線池中的最大空閒連線

spring.redis.pool.max-idle=8

# 連線池中的最小空閒連線

spring.redis.pool.min-idle=0

# 連線超時時間(毫秒)

spring.redis.timeout=0

其中spring.redis.database的配置通常使用0即可,redis在配置的時候可以設定資料庫數量,預設為16,可以理解為資料庫的schema

測試訪問

通過編寫測試用例,舉例說明如何訪問redis。

@runwith(springjunit4classrunner.class

)class

)public

class

@autowired

private

stringredistemplate stringredistemplate;

@test

public

void

test() throws exception

}

上面的例子中,我們使用stringredistemplate物件進行redis的讀寫操作,該物件從命名中就可注意到支援的是string型別。如果有使用過spring-data-redis的開發者一定熟悉redistemplate介面,stringredistemplate就相當於redistemplate的實現。

除了string型別,實戰中我們還經常會在redis中儲存物件,這時候我們就會想是否可以使用類似redistemplate來初始化並進行操作。但是spring boot並不支援直接使用,需要我們自己實現redisserializer介面來對傳入物件進行序列化和反序列化,下面我們通過乙個例項來完成物件的讀寫操作。

建立要儲存的物件:user

public

class

user implements serializable

//省略getter和setter

}

實現物件的序列化介面

public

class redisobjectserializer implements redisserializer

try

catch

(exception ex)

} public

byte serialize(object object

)

try

catch

(exception ex)

} private boolean isempty(byte

data)

}

配置針對user的redistemplate例項

@configuration

public

class

redisconfig

@bean

public redistemplateredistemplate(redisconnectionfactory factory)

}

測試案例:

@runwith(springjunit4classrunner.class

)class

)public

class

@autowired

private redistemplateredistemplate;

@test

public

void

test() throws exception

}

更加詳細的spring data redis操作,請參考:

Spring Boot中使用MongoDB資料庫

前段時間分享了關於spring boot中使用redis的文章,除了redis之後,我們在網際網路產品中還經常會用到另外一款著名的nosql資料庫mongodb。下面就來簡單介紹一下mongodb,並且通過乙個例子來介紹spring boot中對mongodb訪問的配置和使用。mongodb是乙個基...

Spring Boot中使用MongoDB資料庫

前段時間分享了關於spring boot中使用redis的文章,除了redis之後,我們在網際網路產品中還經常會用到另外一款著名的nosql資料庫mongodb。下面就來簡單介紹一下mongodb,並且通過乙個例子來介紹spring boot中對mongodb訪問的配置和使用。mongodb是乙個基...

SpringBoot中使用日誌

結果 所有配置檔案都會被載入,高優先順序的配置檔案會覆蓋低優先順序的配置檔案 springboot 底層是spring框架,spring框架預設是用jcl springboot選用slf4j和logback作為日誌框架 如何使用slf4j import org.slf4j.logger import...