springboot整合redis还是很简单的,但是涉及存储普通对象时就有点懵逼了,下面是我整合的步骤:
1、创建springboot项目(version:2.0.1.RELEASE)
只需要在pom.xml有加入下面依赖即可:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
加入这个依赖后springboot会自动加载下面的类:
@Configuration
@ConditionalOnClass({RedisOperations.class})
@EnableConfigurationProperties({RedisProperties.class})
@Import({LettuceConnectionConfiguration.class, JedisConnectionConfiguration.class})
public class RedisAutoConfiguration {
public RedisAutoConfiguration() {
}
@Bean
@ConditionalOnMissingBean(
name = {"redisTemplate"}
)
public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) throws UnknownHostException {
RedisTemplate template = new RedisTemplate();
template.setConnectionFactory(redisConnectionFactory);
return template;
}
@Bean
@ConditionalOnMissingBean
public StringRedisTemplate stringRedisTemplate(RedisConnectionFactory redisConnectionFactory) throws UnknownHostException {
StringRedisTemplate template = new StringRedisTemplate();
template.setConnectionFactory(redisConnectionFactory);
return template;
}
}
这时候容器中就有stringRedisTemplate和redisTemplate这2个bean。
2、
redis操作时键值对的存储形式,见名知意stringRedisTemplate的键值对都是字符串的形式,其实际上是继承了RedisTemplate这个类,也就是后者。下面先看看RedisTemplate,然后再看StringRedisTemplate,后面就可以自己自定义存储形