jedis2.9.0连接redis

来源:互联网 发布:outlook邮件导入mac 编辑:程序博客网 时间:2024/06/05 08:30

jedis2.9.0连接redis

首先项目引入jedis-2.9.0.jar+commons-pool2-2.0.jar

其他的直接看代码:

import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import java.util.Set;import redis.clients.jedis.Jedis;import redis.clients.jedis.JedisPool;import redis.clients.jedis.JedisPoolConfig;public class RedisUtil {    private static JedisPool jedisPool = null;    // Redis服务器IP    private static String ADDR = "192.168.201.100";    // Redis的端口号    private static int PORT = 6379;    // 访问密码    private static String AUTH = "123456";    /**     * 初始化Redis连接池     */    static {        try {            JedisPoolConfig config = new JedisPoolConfig();            // 连接耗尽时是否阻塞, false报异常,ture阻塞直到超时, 默认true            config.setBlockWhenExhausted(true);            // 设置的逐出策略类名, 默认DefaultEvictionPolicy(当连接超过最大空闲时间,或连接数超过最大空闲连接数)            config.setEvictionPolicyClassName("org.apache.commons.pool2.impl.DefaultEvictionPolicy");            // 是否启用pool的jmx管理功能, 默认true            config.setJmxEnabled(true);            // 最大空闲连接数, 默认8个 控制一个pool最多有多少个状态为idle(空闲的)的jedis实例。            config.setMaxIdle(8);            // 最大连接数, 默认8个            config.setMaxTotal(200);            // 表示当borrow(引入)一个jedis实例时,最大的等待时间,如果超过等待时间,则直接抛出JedisConnectionException;            config.setMaxWaitMillis(1000 * 100);            // 在borrow一个jedis实例时,是否提前进行validate操作;如果为true,则得到的jedis实例均是可用的;            config.setTestOnBorrow(true);            jedisPool = new JedisPool(config, ADDR, PORT, 3000, AUTH);        } catch (Exception e) {            e.printStackTrace();        }    }    /**     * 获取Jedis实例     *      * @return     */    public synchronized static Jedis getJedis() {        try {            if (jedisPool != null) {                Jedis resource = jedisPool.getResource();                return resource;            } else {                return null;            }        } catch (Exception e) {            e.printStackTrace();            return null;        }    }    /**     * 释放jedis资源     *      * @param jedis     */    public static void close(final Jedis jedis) {        if (jedis != null) {            jedis.close();        }    }    public static void main(String[] args) {        Jedis jedis = RedisUtil.getJedis();//      RedisUtil.testString(jedis);        RedisUtil.testMap(jedis);//      RedisUtil.testList(jedis);//      RedisUtil.testSet(jedis);        RedisUtil.close(jedis);    }    /**     * 字符串测试     *      * @param jedis     */    public static void testString(Jedis jedis) {        jedis.set("name", "xxxx");// 向key-->name中放入了value-->xinxin        System.out.println(jedis.get("name"));// 执行结果:xinxin        jedis.append("name", " is my lover"); // 拼接        System.out.println(jedis.get("name"));        jedis.del("name"); // 删除某个键        System.out.println(jedis.get("name"));        // 设置多个键值对        jedis.mset("name", "某某某", "age", "24", "qq", "476777XXX");        jedis.incr("age"); // 进行加1操作        System.out.println(jedis.get("name") + "-" + jedis.get("age") + "-"                + jedis.get("qq"));    }    /**     * map 用法     *      * @param jedis     */    public static void testMap(Jedis jedis) {        // -----添加数据----------        Map<String, String> map = new HashMap<String, String>();        map.put("name", "xinxin");        map.put("age", "22");        map.put("qq", "123456");        jedis.hmset("user", map);        // 取出user中的name,执行结果:[minxr]-->注意结果是一个泛型的List        // 第一个参数是存入redis中map对象的key,后面跟的是放入map中的对象的key,后面的key可以跟多个,是可变参数        List<String> rsmap = jedis.hmget("user", "name", "age", "qq");        System.out.println(rsmap);        // 删除map中的某个键值        jedis.hdel("user", "age");        System.out.println(jedis.hmget("user", "age")); // 因为删除了,所以返回的是null        System.out.println(jedis.hlen("user")); // 返回key为user的键中存放的值的个数2        System.out.println(jedis.exists("user"));// 是否存在key为user的记录 返回true        System.out.println(jedis.hkeys("user"));// 返回map对象中的所有key        System.out.println(jedis.hvals("user"));// 返回map对象中的所有value        Iterator<String> iter = jedis.hkeys("user").iterator();        while (iter.hasNext()) {            String key = iter.next();            System.out.println(key + ":" + jedis.hmget("user", key));        }    }    /**     * jedis操作List     */    public static void testList(Jedis jedis) {        // 开始前,先移除所有的内容        jedis.del("java framework");        System.out.println(jedis.lrange("java framework", 0, -1));        // 先向key java framework中存放三条数据        jedis.lpush("java framework", "spring");        jedis.lpush("java framework", "struts");        jedis.lpush("java framework", "hibernate");        // 再取出所有数据jedis.lrange是按范围取出,        // 第一个是key,第二个是起始位置,第三个是结束位置,jedis.llen获取长度 -1表示取得所有        System.out.println(jedis.lrange("java framework", 0, -1));        jedis.del("java framework");        jedis.rpush("java framework", "spring");        jedis.rpush("java framework", "struts");        jedis.rpush("java framework", "hibernate");        System.out.println(jedis.lrange("java framework", 0, -1));    }    /**      * jedis操作Set      */      public static void testSet(Jedis jedis){          //添加          jedis.sadd("user","liuling");          jedis.sadd("user","xinxin");          jedis.sadd("user","ling");          jedis.sadd("user","zhangxinxin");        jedis.sadd("user","who");          //移除noname          jedis.srem("user","who");          System.out.println(jedis.smembers("user"));//获取所有加入的value          System.out.println(jedis.sismember("user", "who"));//判断 who 是否是user集合的元素          System.out.println(jedis.srandmember("user"));          System.out.println(jedis.scard("user"));//返回集合的元素个数      }  }

jar包下载地址

2 1
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 2岁宝宝智力落后怎么办 六个月宝宝尖足怎么办 3个月宝宝尖足怎么办 2岁宝宝发育慢怎么办 2岁宝宝便秘怎么办呀 2岁宝宝老是便秘怎么办 宝宝4岁不说话怎么办 宜家柜子味道重怎么办 家里有小飞虫怎么办呀 汽车里进老鼠了怎么办 老鼠跑到车里了怎么办 我的小车有老鼠怎么办 车里面进了老鼠怎么办 街电充电宝丢了怎么办 充电宝充不了电怎么办 脚裸扭伤肿了怎么办 大货车电瓶亏电怎么办 货车电瓶被偷了怎么办 小乌龟尾巴断了怎么办 长青春痘怎么办简单小妙招 一关灯就有蚊子怎么办 狗狗误食蟑螂药怎么办 泰迪误食蟑螂药怎么办 猫咪吃了蟑螂药怎么办 狗把蟑螂药吃了怎么办 猫吃了蟑螂诱饵怎么办 猫吃了蟑螂中毒怎么办 孕妇胃烧的难受怎么办 6个月孕妇胃难受怎么办 飞机杯吸盘不上怎么办 我的车位被占用怎么办 占别人车位的车怎么办 头受凉受风了疼怎么办 看电脑时间长了眼睛疼怎么办 电脑玩久了头疼怎么办 屋里有死老鼠味怎么办 老鼠死在车里面怎么办 手机锁屏怎么办求解锁 玩lol左键失灵怎么办 小米鼠标没电了怎么办 电脑键盘鼠标没反应怎么办