springBoot集成redis中间件
Spring Boot 整合 Redis 可以通过 Spring Data Redis 或者 Jedis 实现。
- 使用 Spring Data Redis
首先,添加依赖到你的 pom.xml
文件:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
然后,在 application.properties
或 application.yml
文件中配置 Redis 连接信息:
spring:
redis:
host: localhost
port: 6379
接下来,你可以使用 RedisTemplate
或 @Cacheable
等注解来操作 Redis。
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
@Component
public class RedisService {
@Autowired
private RedisTemplate<String, Object> redisTemplate;
public void setKey(String key, Object value) {
redisTemplate.opsForValue().set(key, value);
}
public Object getKey(String key) {
return redisTemplate.opsForValue().get(key);
}
}
- 使用 Jedis
如果你更喜欢 Jedis 的风格,你也可以使用它。首先添加依赖:
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>
然后配置 JedisPool:
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
@Configuration
public class RedisConfig {
@Bean
public JedisPool jedisPool() {
JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
jedisPoolConfig.setMaxIdle(10);
jedisPoolConfig.setMaxWaitMillis(2000);
JedisPool jedisPool = new JedisPool(jedisPoolConfig, "localhost", 6379);
return jedisPool;
}
}
使用 Jedis:
import org.springframework.beans.factory.annotation.Autowired;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
public class RedisService {
@Autowired
private JedisPool jedisPool;
public void setKey(String key, String value) {
Jedis jedis = jedisPool.getResource();
jedis.set(key, value);
jedis.close();
}
public String getKey(String key) {
Jedis jedis = jedisPool.getResource();
String value = jedis.get(key);
jedis.close();
return value;
}
}
以上两种方式
评论已关闭