redis客户端连接方式

客户端几种连接方式

  1. Jedis
  2. JedisCluster
  3. RedisTemplate
    4.StringRedisTemplate

1.jedis

        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.9.0</version>
        </dependency>

package com.tsj.redis;

import redis.clients.jedis.Jedis;

public class JedisTest {
    public static void main(String[] args) {
        Jedis jedis = null;
        try {
            //连接本地的 Redis 服务
            jedis = new Jedis(RedisConstant.HOST, RedisConstant.PORT);
            jedis.auth(RedisConstant.PASSWORD);

            //查看服务是否运行
            System.out.println("服务运行状态: " + jedis.ping());

        } catch (Exception e) {

        } finally {
            if (jedis != null) {
                jedis.close();
            }
        }
    }
}

2.JedisCluster

        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.9.0</version>
        </dependency>

package com.tsj.redis;

import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster;
import redis.clients.jedis.JedisPoolConfig;

import java.io.IOException;
import java.util.HashSet;
import java.util.Set;

public class JedisClusterTest {
    public static void main(String[] args) {
        JedisCluster cluster = null;
        try {
            JedisPoolConfig config = new JedisPoolConfig();
            config.setMaxTotal(500);
            config.setMinIdle(2);
            config.setMaxIdle(500);
            config.setMaxWaitMillis(10000);
            config.setTestOnBorrow(true);
            config.setTestOnReturn(true);
            Set<HostAndPort> nodes = new HashSet<>();
            nodes.add(new HostAndPort(RedisConstant.HOST, RedisConstant.PORT));
//            nodes.add(new HostAndPort("xxxx", 6380));
//            nodes.add(new HostAndPort("xxxx", 6381));
//            nodes.add(new HostAndPort("xxxx", 6382));

            cluster = new JedisCluster(nodes, 10000, 10000, 100, RedisConstant.PASSWORD, config);

            //查看服务是否运行
            cluster.setex("test00", 30,"0000");
            System.out.println(cluster.get("test00"));
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (cluster != null) {
                try {
                    cluster.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }

}

3.RedisTempalte

  <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
            <version>1.5.8.RELEASE</version>
  </dependency>
package com.tsj.redis;

import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.GenericToStringSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;

import java.util.concurrent.TimeUnit;

public class RedisTempalteTest {
    public static void main(String[] args) {
        JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory();
        jedisConnectionFactory.setHostName(RedisConstant.HOST);
        jedisConnectionFactory.setPort(RedisConstant.PORT);
        jedisConnectionFactory.setPassword(RedisConstant.PASSWORD);

        RedisTemplate<String, Object> redisTemplate = new RedisTemplate<String, Object>();
        redisTemplate.setConnectionFactory(jedisConnectionFactory);
        redisTemplate.setKeySerializer(new StringRedisSerializer());
        redisTemplate.setValueSerializer(new GenericToStringSerializer<Object>(Object.class));
        redisTemplate.setHashKeySerializer(new StringRedisSerializer());
        redisTemplate.setHashValueSerializer(new GenericToStringSerializer<Object>(Object.class));

        //初始化RedisTemplate
        redisTemplate.afterPropertiesSet();

        redisTemplate.opsForValue().set("test01", "0001", 30, TimeUnit.SECONDS);
        System.out.println(redisTemplate.opsForValue().get("test01"));

    }
}


4.StringRedisTemplate

        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-redis</artifactId>
            <version>1.8.8.RELEASE</version>
        </dependency>
package com.tsj.redis;

import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
import org.springframework.data.redis.core.StringRedisTemplate;

import java.util.concurrent.TimeUnit;

public class StringRedisTemplateTest {

    public static void main(String[] args) {
        JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory();
        jedisConnectionFactory.setHostName(RedisConstant.HOST);
        jedisConnectionFactory.setPort(RedisConstant.PORT);
        jedisConnectionFactory.setPassword(RedisConstant.PASSWORD);


        StringRedisTemplate stringRedisTemplate = new StringRedisTemplate();
        stringRedisTemplate.setConnectionFactory(jedisConnectionFactory);
        //初始化stringRedisTemplate
        stringRedisTemplate.afterPropertiesSet();

        stringRedisTemplate.opsForValue().set("test02", "0002", 30, TimeUnit.SECONDS);
        System.out.println(stringRedisTemplate.opsForValue().get("test02"));
        
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值