千家信息网

springboot整合redis实例分析

发表于:2025-01-25 作者:千家信息网编辑
千家信息网最后更新 2025年01月25日,这篇文章主要介绍了springboot整合redis实例分析的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇springboot整合redis实例分析文章都会有所收获,下面
千家信息网最后更新 2025年01月25日springboot整合redis实例分析

这篇文章主要介绍了springboot整合redis实例分析的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇springboot整合redis实例分析文章都会有所收获,下面我们一起来看看吧。

导入redis pom文件

                    org.springframework.boot            spring-boot-starter-data-     redis        

编写redis配置

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

编写springConfig文件

由于存储需要序列化,所以我们要配置redis的序列化方式,如果不配置的话key和value默认使用的都是StringRedisSerializer,只能用来存储String类型的数据,因此需要配置我们常用的类型。同时我们的Java实体类也要一定要继承Serializable接口

@Configurationpublic class RedisConfig {    @Bean    public RedisTemplate redisTemplate(RedisConnectionFactory factory){        RedisTemplate 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

在这一步前,我们要确定所连接的redis服务已经开启

@Autowired    private RedisTemplate 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实例分析"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。

0