Spring Data Redis 教程

Spring Data Redis 配置Jedis连接器

Jedis Client 是 Redis 官网推荐的一个面向 java 客户端,库文件实现了对各类 API 进行封装调用。

Jedis 连接器是通过 Spring Data Redis 的 org.springframework.data.redis.connection.jedis 包支持的社区驱动连接器。

下面将介绍怎样在 Spring Boot 中引入 Spring Data Redis,且配置使用 Jedis 作为连接 Redis 的驱动。

配置依赖

在 pom.xml 文件中的 <dependencies> 元素下添加 jedis 的 maven 依赖,如下:

<dependencies>
    <!-- other dependency elements omitted -->
    <dependency>
        <groupId>redis.clients</groupId>
        <artifactId>jedis</artifactId>
        <version>3.8.0</version>
    </dependency>
</dependencies>

在最简单的形式中,Jedis 配置如下所示:

@Configuration
public class AppConfig {
    @Bean
    public JedisConnectionFactory redisConnectionFactory() {
        return new JedisConnectionFactory();
    }
}

但是,对于生产环境,您可能需要调整主机或密码等设置,如下例所示:

@Configuration
public class RedisConfiguration {

    /**
     * 创建 Jedis 连接器
     */
    @Bean
    public JedisConnectionFactory redisConnectionFactory() {
        // 配置了 Redis 服务器的IP地址和端口
        RedisStandaloneConfiguration config = 
            new RedisStandaloneConfiguration("server", 6379);
        return new JedisConnectionFactory(config);
    }

    /**
     * 创建 RedisTemplate 实例
     */
    @Bean
    public RedisTemplate<String,String> redisTemplate(RedisConnectionFactory factory) {
        RedisTemplate<String,String> redisTemplate = new RedisTemplate<>();
        redisTemplate.setConnectionFactory(factory);

        // 设置序列化方式
        redisTemplate.setKeySerializer(new StringRedisSerializer());
        redisTemplate.setValueSerializer(new StringRedisSerializer());

        redisTemplate.setHashKeySerializer(new StringRedisSerializer());
        redisTemplate.setHashValueSerializer(new StringRedisSerializer());

        redisTemplate.setDefaultSerializer(new StringRedisSerializer());
        redisTemplate.afterPropertiesSet();

        return redisTemplate;
    }
}

关于如何配置 Jedis 连接器,且简单使用 RedisTemplate 对象请参见 “Spring Data Redis 安装(Spring Boot)

说说我的看法
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号