java - idea连接redis

目录

1.创建一个普通的maven工程

1 java连接单机redis

(1)  在一个项目中创建子模块.方便于整理.

(2)引入redis依赖

 (3)测试

2 java通过连接池连接redis

3 java连接redis集群


1.创建一个普通的maven工程

1 java连接单机redis

(1)  在一个项目中创建子模块.方便于整理.

java - idea连接redis_第1张图片

java - idea连接redis_第2张图片

 java - idea连接redis_第3张图片

(2)引入redis依赖

  
        
            redis.clients
            jedis
            3.8.0
        
    

java - idea连接redis_第4张图片

 (3)测试

public class Test01 {
    public static void main(String[] args) {
         //把所有关于对redis的操作都封装到一个类中Jedis。
//        Jedis jedis=new Jedis();//无参构造函数,默认连接的是本地的redis。而且端口6379
        Jedis jedis=new Jedis("192.168.223.147",6379);

//        String ping = jedis.ping();//测试连通性
//        System.out.println(ping);
        Set keys = jedis.keys("*");
        System.out.println(keys);
        Long del = jedis.del("k2", "k3","k5");
        System.out.println("删除的个数:"+del);
        //关于字符串的操作
//        jedis.setex("k5",20L,"刘德华");
//        String k5 = jedis.get("k5");
//        System.out.println(k5);
//        Long setnx = jedis.setnx("k6", "zxy");
//        System.out.println(setnx);

        //关于hash的操作
        jedis.hset("k10","name","于清晨");
        String hget = jedis.hget("k10", "name");
        System.out.println(hget);

        Map map=new HashMap();
        map.put("name","王振阳");
        map.put("age","18");
        map.put("sex","男");
        jedis.hset("k11",map);
        Map map1 = jedis.hgetAll("k11");
        System.out.println(map1.get("name"));
        //关于其他类型---自己实验
        jedis.close();//关闭连接对象


    }
}

 特点: Jedis把对redis的操作都封装到Jedis类对象中了,而每个命令封装了一个对应的方法。

2 java通过连接池连接redis

连接池的作用: 减少频繁创建和销毁连接对象。

public class Test02 {
    public static void main(String[] args) {
        //配置连接对象信息
        JedisPoolConfig poolConfig=new JedisPoolConfig();
        poolConfig.setMinIdle(5);//设置最小的空闲数
        poolConfig.setMaxIdle(10); //当没人连接redis服务器时,该池子中最能空闲几个连接对象
        poolConfig.setMaxTotal(15); //当有人连接redis服务时,最大能生成多少个连接对象
//        poolConfig.setMaxWait();

        //创建连接池对象
        JedisPool jedisPool=new JedisPool(poolConfig,"192.168.223.147",6379);
        long start = System.currentTimeMillis();

        //从连接池获取连接对象
        for(int i=0;i<1000;i++) {
            Jedis jedis = jedisPool.getResource();
            jedis.ping();
            jedis.close();//把该对象还给连接池
        }
        long end=System.currentTimeMillis();
        System.out.println("耗时:"+(end-start));

    }
}

3 java连接redis集群

集群模式可参考文章:http://t.csdn.cn/9a7MY

public class Test04 {
    public static void main(String[] args) {
        //必须时所有redis服务器
        HostAndPort hostAndPort1=new HostAndPort("192.168.223.147",7001);
        HostAndPort hostAndPort2=new HostAndPort("192.168.223.147",7002);
        HostAndPort hostAndPort3=new HostAndPort("192.168.223.147",7003);
        HostAndPort hostAndPort4=new HostAndPort("192.168.223.147",7004);
        HostAndPort hostAndPort5=new HostAndPort("192.168.223.147",7005);
        HostAndPort hostAndPort6=new HostAndPort("192.168.223.147",7006);
        Set sets=new HashSet();
        sets.add(hostAndPort1);
        sets.add(hostAndPort2);
        sets.add(hostAndPort3);
        sets.add(hostAndPort4);
        sets.add(hostAndPort5);
        sets.add(hostAndPort6);
        JedisCluster jedisCluster=new JedisCluster(sets);
        jedisCluster.set("k1","v1");
        jedisCluster.set("k2","v2");
        jedisCluster.set("k3","v3");
        jedisCluster.set("k4","v4");
        jedisCluster.set("k5","v5");
        jedisCluster.set("k6","v6");
        jedisCluster.set("k7","v7");

    }
}

你可能感兴趣的:(java,intellij-idea,开发语言)