pringboot 整合RedisTemplate
时间: 2024-10-08 17:11:27 浏览: 28
springboot整合freemarker详解
Spring Boot整合RedisTemplate通常是为了利用Spring的数据访问框架与Redis这个流行的键值存储系统进行交互。以下是简单的步骤:
1. 添加依赖:在你的Maven或Gradle构建文件中添加Spring Data Redis和Spring Boot Starter Data Redis的依赖。
Maven示例:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
```
Gradle示例:
```groovy
implementation 'org.springframework.boot:spring-boot-starter-data-redis'
```
2. 配置Redis:在`application.properties`或`application.yml`中配置Redis连接信息,如主机名、端口、密码等。
3. 创建RedisTemplate:在Spring的配置类中(通常是`ApplicationRunner`或`Configuration`),初始化`RedisTemplate`实例并注入RedisConnectionFactory。
```java
@Bean
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
RedisTemplate<String, Object> template = new RedisTemplate<>();
template.setConnectionFactory(factory);
// 设置序列化策略,例如Jackson2JsonRedisSerializer
Jackson2JsonRedisSerializer<Object> jsonSerializer = new Jackson2JsonRedisSerializer<>(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jsonSerializer.setObjectMapper(om);
template.setValueSerializer(jsonSerializer);
template.afterPropertiesSet();
return template;
}
```
4. 使用RedisTemplate:现在你可以通过`RedisTemplate`来操作Redis了,比如设置、获取、删除键值对,或者执行发布订阅等高级操作。
```java
@Autowired
private RedisTemplate<String, String> redisTemplate;
public void setKey(String key, String value) {
redisTemplate.opsForValue().set(key, value);
}
public String getValue(String key) {
return redisTemplate.opsForValue().get(key);
}
```
阅读全文