您好,登錄后才能下訂單哦!
這篇文章主要介紹了springboot整合redis實例分析的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇springboot整合redis實例分析文章都會有所收獲,下面我們一起來看看吧。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data- redis</artifactId> </dependency>
spring: redis: password: port: 6379 host: localhost database: 0 jedis: pool: ## 連接池最大連接數(使用負值表示沒有限制) #spring.redis.pool.max-active=8 max-active: 8 ## 連接池最大阻塞等待時間(使用負值表示沒有限制) #spring.redis.pool.max-wait=-1 max-wait: -1 ## 連接池中的最大空閑連接 #spring.redis.pool.max-idle=8 max-idle: 8 ## 連接池中的最小空閑連接 #spring.redis.pool.min-idle=0 min-idle: 0 ## 連接超時時間(毫秒) lettuce: shutdown-timeout: 0
由于存儲需要序列化,所以我們要配置redis的序列化方式,如果不配置的話key和value默認使用的都是StringRedisSerializer,只能用來存儲String類型的數據,因此需要配置我們常用的類型。同時我們的Java實體類也要一定要繼承Serializable接口
@Configuration public class RedisConfig { @Bean public RedisTemplate<String , Object> redisTemplate(RedisConnectionFactory factory){ RedisTemplate<String, Object> template = new RedisTemplate<>(); template.setConnectionFactory(factory); Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class); ObjectMapper om = new ObjectMapper(); om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL); // om.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL, JsonTypeInfo.As.PROPERTY); jackson2JsonRedisSerializer.setObjectMapper(om); StringRedisSerializer stringRedisSerializer = new StringRedisSerializer(); // key采用String的序列化方式 template.setKeySerializer(stringRedisSerializer); // hash的key也采用String的序列化方式 template.setHashKeySerializer(stringRedisSerializer); // value序列化方式采用jackson template.setValueSerializer(jackson2JsonRedisSerializer); // hash的value序列化方式采用jackson template.setHashValueSerializer(jackson2JsonRedisSerializer); template.afterPropertiesSet(); return template; } }
在這一步前,我們要確定所連接的redis服務已經開啟
@Autowired private RedisTemplate<String , Object> redisTemplate; @Test public void testSelect() throws SQLException { redisTemplate.opsForValue().set("qqq",userMapper.findByUname("zengkaitian")); System.out.println("redis中獲取的:"+redisTemplate.opsForValue().get("qqq")); }
測試結果
關于“springboot整合redis實例分析”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“springboot整合redis實例分析”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。