用hash求兩個(gè)集合交集 動(dòng)態(tài)數(shù)組中的字符串如何求交集?
動(dòng)態(tài)數(shù)組中的字符串如何求交集?可以用哈希表實(shí)現(xiàn),時(shí)間復(fù)雜度僅為O(N)如何使用RedisTemplate訪問Redis數(shù)據(jù)結(jié)構(gòu)?在springboot項(xiàng)目中,集成各種框架是非常容易的。下面簡(jiǎn)單介紹一下
動(dòng)態(tài)數(shù)組中的字符串如何求交集?
可以用哈希表實(shí)現(xiàn),時(shí)間復(fù)雜度僅為O(N)
如何使用RedisTemplate訪問Redis數(shù)據(jù)結(jié)構(gòu)?
在springboot項(xiàng)目中,集成各種框架是非常容易的。下面簡(jiǎn)單介紹一下如何在springboot項(xiàng)目中集成單機(jī)模式r:的配置,請(qǐng)參考下圖。
因?yàn)槲沂褂昧薽aven方法來構(gòu)建項(xiàng)目,所以我需要在項(xiàng)目的pom文件中添加redis相關(guān)的依賴項(xiàng)。
然后您需要實(shí)現(xiàn)redis概要類。配置文件的jedis連接池配置沒有列出。反正是要逐步設(shè)置的基本屬性文件,連接工廠也和連接池有關(guān)。本文重點(diǎn)介紹redisTemplate的實(shí)現(xiàn)及其與redis操作工具類的配合??梢愿鶕?jù)下圖進(jìn)行個(gè)性化設(shè)置:
實(shí)現(xiàn)配置文件后,可以在RedisUtil工具類中使用redisTemplate。如下圖所示:
這里redis模板實(shí)例化是在redis配置類中實(shí)現(xiàn)的。通過注釋將RedisUtil直接注入到spring容器中,使用工具類的setRedisTemplate方法實(shí)例化RedisTemplate。這樣,您可以通過@AutoWired注釋直接組ean。
在RedisUtil工具類中,我們通過redisTemplate操縱數(shù)據(jù)結(jié)構(gòu)。無論是通用數(shù)據(jù)(字符串)、地圖數(shù)據(jù)結(jié)構(gòu)還是列表數(shù)據(jù)結(jié)構(gòu),都有相應(yīng)的操作方法。如下圖所示:
工具類完成后,在相應(yīng)的服務(wù)層使用工具類操作redis的數(shù)據(jù)結(jié)構(gòu),實(shí)現(xiàn)相應(yīng)的業(yè)務(wù)。
以上是speingboot項(xiàng)目中一個(gè)redis操作類的簡(jiǎn)單實(shí)現(xiàn)。除了數(shù)據(jù)結(jié)構(gòu)的操作,我們還可以利用redis的特性實(shí)現(xiàn)一些業(yè)務(wù)場(chǎng)景特定的功能。比如用增量法實(shí)現(xiàn)like功能;利用redis單線程特性生成唯一主鍵;將redis和Lua腳本結(jié)合起來實(shí)現(xiàn)redis分布式鎖,當(dāng)然這需要考慮業(yè)務(wù)時(shí)間和到期時(shí)間的關(guān)系。
另外,在使用redis的過程中要考慮雪崩、滲透、擊穿,這也是面試過程中經(jīng)常被問到的問題。希望對(duì)你有幫助。。