本篇文章給大家分享的是有關(guān)怎么在spring boot項(xiàng)目中內(nèi)嵌redis,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
成都創(chuàng)新互聯(lián)公司主營(yíng)云浮網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,重慶APP開發(fā)公司,云浮h5重慶小程序開發(fā)搭建,云浮網(wǎng)站營(yíng)銷推廣歡迎云浮等地區(qū)企業(yè)咨詢
redis介紹
Redis是目前業(yè)界使用最廣泛的內(nèi)存數(shù)據(jù)存儲(chǔ)。相比memcached,Redis支持更豐富的數(shù)據(jù)結(jié)構(gòu),例如hashes, lists, sets等,同時(shí)支持?jǐn)?shù)據(jù)持久化。除此之外,Redis還提供一些類數(shù)據(jù)庫的特性,比如事務(wù),HA,主從庫??梢哉fRedis兼具了緩存系統(tǒng)和數(shù)據(jù)庫的一些特性,因此有著豐富的應(yīng)用場(chǎng)景。
使用方法如下:
添加包引用build.gradle
testCompile( 'com.github.kstyrc:embedded-redis:0.6' )
添加配置注入
import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.data.redis.connection.RedisConnectionFactory;import org.springframework.data.redis.core.HashOperations;import org.springframework.data.redis.core.ListOperations;import org.springframework.data.redis.core.RedisTemplate;import org.springframework.data.redis.core.SetOperations;import org.springframework.data.redis.core.ValueOperations;import org.springframework.data.redis.core.ZSetOperations;import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;import org.springframework.data.redis.serializer.StringRedisSerializer; @Configuration public class RedisConfig { /** * 注入 RedisConnectionFactory */ @Autowired RedisConnectionFactory redisConnectionFactory; /** * 實(shí)例化 RedisTemplate 對(duì)象 * * @return */ @Bean public RedisTemplatefunctionDomainRedisTemplate() { RedisTemplate redisTemplate = new RedisTemplate<>(); initDomainRedisTemplate(redisTemplate, redisConnectionFactory); return redisTemplate; } /** * 設(shè)置數(shù)據(jù)存入 redis 的序列化方式 * * @param redisTemplate * @param factory */ private void initDomainRedisTemplate(RedisTemplate redisTemplate, RedisConnectionFactory factory) { redisTemplate.setKeySerializer(new StringRedisSerializer()); redisTemplate.setHashKeySerializer(new StringRedisSerializer()); redisTemplate.setHashValueSerializer(new JdkSerializationRedisSerializer()); redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer()); redisTemplate.setConnectionFactory(factory); } /** * 實(shí)例化 HashOperations 對(duì)象,可以使用 Hash 類型操作 * * @param redisTemplate * @return */ @Bean public HashOperations hashOperations(RedisTemplate redisTemplate) { return redisTemplate.opsForHash(); } /** * 實(shí)例化 ValueOperations 對(duì)象,可以使用 String 操作 * * @param redisTemplate * @return */ @Bean public ValueOperations valueOperations(RedisTemplate redisTemplate) { return redisTemplate.opsForValue(); } /** * 實(shí)例化 ListOperations 對(duì)象,可以使用 List 操作 * * @param redisTemplate * @return */ @Bean public ListOperations listOperations(RedisTemplate redisTemplate) { return redisTemplate.opsForList(); } /** * 實(shí)例化 SetOperations 對(duì)象,可以使用 Set 操作 * * @param redisTemplate * @return */ @Bean public SetOperations setOperations(RedisTemplate redisTemplate) { return redisTemplate.opsForSet(); } /** * 實(shí)例化 ZSetOperations 對(duì)象,可以使用 ZSet 操作 * * @param redisTemplate * @return */ @Bean public ZSetOperations zSetOperations(RedisTemplate redisTemplate) { return redisTemplate.opsForZSet(); } }
在業(yè)務(wù)層中使用redis
@Autowired RedisTemplateredisCacheTemplate;
在使用過程中,我們的RedisTemplate對(duì)象已經(jīng)被Autowired注入了。
以上就是怎么在spring boot項(xiàng)目中內(nèi)嵌redis,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。