springbootredis配置(springbootredis配置文件)

[img]

简介:

Spring Boot 是一款极其方便开发的 Java 框架,而 Redis 则是开发中经常使用的一种高速缓存技术。本文将详细介绍如何在 Spring Boot 中配置 Redis。

多级标题:

一、引入 Redis 相关依赖

二、配置 RedisTemplate 和 RedisConnectionFactory

三、配置 Redis Cache Manager

四、使用 Redis 进行缓存操作

内容详细说明:

一、引入 Redis 相关依赖

我们需要在 pom.xml 文件中引入 Spring Boot 对 Redis 的支持,通常包括以下两个依赖:

```

org.springframework.boot

spring-boot-starter-data-redis

redis.clients

jedis

```

二、配置 RedisTemplate 和 RedisConnectionFactory

Spring Boot 提供了 RedisTemplate 和 RedisConnectionFactory 两个类来支持对 Redis 的操作。

在 application.properties(或 application.yml)文件中添加以下 Redis 连接信息:

```

spring.redis.host=127.0.0.1

spring.redis.port=6379

spring.redis.password=

```

在 Spring Boot 的启动类中进行以下配置:

```

@Configuration

public class RedisConfig {

@Bean

public RedisTemplate redisTemplate(RedisConnectionFactory factory) {

RedisTemplate template = new RedisTemplate<>();

template.setConnectionFactory(factory);

template.setKeySerializer(new StringRedisSerializer());

template.setValueSerializer(new GenericJackson2JsonRedisSerializer());

template.afterPropertiesSet();

return template;

}

@Bean

public RedisConnectionFactory redisConnectionFactory() {

JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory();

jedisConnectionFactory.setHostName("127.0.0.1");

jedisConnectionFactory.setPort(6379);

return jedisConnectionFactory;

}

```

三、配置 Redis Cache Manager

在 Spring Boot 中,配置 Redis 来作为缓存还需要配置 Redis Cache Manager。

在 Spring 启动类中添加以下代码:

```

@EnableCaching

@Configuration

public class CachingConfig {

@Autowired

private RedisConnectionFactory redisConnectionFactory;

@Bean

public CacheManager cacheManager() {

RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig()

.entryTtl(Duration.ofMinutes(1))

.disableCachingNullValues()

.serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(new GenericJackson2JsonRedisSerializer()));

.prefixKeysWith("key_prefix:");

return RedisCacheManager.builder(redisConnectionFactory)

.cacheDefaults(redisCacheConfiguration)

.build();

}

```

四、使用 Redis 进行缓存操作

现在我们已经完成了 Redis 在 Spring Boot 中的配置,现在就可以通过代码对 Redis 进行缓存操作了。

在需要进行缓存操作的类中自动注入 RedisTemplate 对象:

```

@Autowired

private RedisTemplate redisTemplate;

```

通过 redisTemplate 对象我们可以进行缓存操作,例如添加缓存:

```

ValueOperations ops = redisTemplate.opsForValue();

ops.set("key", "value", 10, TimeUnit.MINUTES);

```

以上代码将在 Redis 中添加一个 key 为 "key" 的缓存,值为 "value",过期时间为 10 分钟。

由于 Spring Boot 对 Redis 的封装,我们可以非常方便地进行 Redis 缓存的使用,提升应用程序的效率和响应速度。

标签列表