zoukankan      html  css  js  c++  java
  • win7 安装Redis

    1、下载Redis的压缩包

    https://github.com/dmajkic/redis/downloads 

    我下载的是redis-2.4.5-win32-win64.zip

    下载完后将其解压放在自己要放的目录下

    解压后的目录

    wKioL1eyfw7Df57mAAEAE_JWMjo903.png

    如果你是32位的话就进32bit的文件夹,64位就进64bit文件夹

    文件夹进去后会看到一下的几个文件

    wKioL1eyf1Pj5BKeAAC5MBLxXwM722.png

    edis-benchmark.exe: 性能测试 模拟N个客户端发送set,get请求

    redis-check-aof.exe:更新日志检查

    redis-check-dump.exe:本地数据库检查

    redis-server.exe:服务程序

    2、接下来就是安装了

    打开dos命令栏,进入到redis的目录下面,输入以下命令:

    redis-server.exe redis.conf

    wKiom1eygL3QERXYAAC6q7mI-84731.png

    安装OK!

    然后再打开一个dos命令栏,进入到redis的目录下,输入以下命令:

    redis-cli.exe -h 127.0.0.1 -p 6379

    3、测试一下

    wKioL1eygM2Cf4mcAACRrdHPw80267.png

    set key value 存值

    get key 取值

    4、Java开发包Jedis

    Jedis :http://www.oschina.net/p/jedis (Redis的官方首选Java开发包)

    1
    2
    3
    4
    5
    6
    7
    8
    <!--Redis -->   
    <dependency>   
    <groupId>redis.clients</groupId>   
    <artifactId>jedis</artifactId>   
    <version>2.0.0</version>   
    <type>jar</type>   
    <scope>compile</scope>   
    </dependency>

    测试例子原帖:http://flychao88.iteye.com/blog/1527163

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    package com.litao.utils;
     
    import org.junit.Before;
    import org.junit.Test;
    import redis.clients.jedis.Jedis;
    import redis.clients.jedis.JedisPool;
    import redis.clients.jedis.JedisPoolConfig;
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.List;
    import java.util.Map;
     
    public class JedisUtilTest {
        JedisPool pool;
        Jedis jedis;
     
        @Before
        public void setUp() {
            pool = new JedisPool(new JedisPoolConfig(), "192.168.10.61");
            jedis = pool.getResource();
            // jedis.auth("password");
        }
     
        @Test
        public void testGet() {
            System.out.println(jedis.get("lu"));
        }
     
        /**
         * Redis存储初级的字符串 CRUD
         */
        @Test
        public void testBasicString() {
            // -----添加数据----------
            jedis.set("name""minxr");// 向key-->name中放入了value-->minxr
            System.out.println(jedis.get("name"));// 执行结果:minxr
            // -----修改数据-----------
            // 1、在原来基础上修改
            jedis.append("name""jarorwar"); // 很直观,类似map 将jarorwar
                                                // append到已经有的value之后
            System.out.println(jedis.get("name"));// 执行结果:minxrjarorwar
            // 2、直接覆盖原来的数据
            jedis.set("name""小明");
            System.out.println(jedis.get("name"));// 执行结果:小明
            // 删除key对应的记录
            jedis.del("name");
            System.out.println(jedis.get("name"));// 执行结果:null
            /**
             * mset相当于 jedis.set("name","minxr"); jedis.set("jarorwar","小明");
             */
            jedis.mset("name""minxr""jarorwar""小明");
            System.out.println(jedis.mget("name""jarorwar"));
        }
     
        /**
         * jedis操作Map
         */
        @Test
        public void testMap() {
            Map<String, String> user = new HashMap<String, String>();
            user.put("name""minxr");
            user.put("pwd""password");
            jedis.hmset("user", user);
            // 取出user中的name,执行结果:[minxr]-->注意结果是一个泛型的List
            // 第一个参数是存入redis中map对象的key,后面跟的是放入map中的对象的key,后面的key可以跟多个,是可变参数
            List<String> rsmap = jedis.hmget("user""name");
            System.out.println(rsmap);
            // 删除map中的某个键值
            // jedis.hdel("user","pwd");
            System.out.println(jedis.hmget("user""pwd")); // 因为删除了,所以返回的是null
            System.out.println(jedis.hlen("user")); // 返回key为user的键中存放的值的个数1
            System.out.println(jedis.exists("user"));// 是否存在key为user的记录 返回true
            System.out.println(jedis.hkeys("user"));// 返回map对象中的所有key [pwd, name]
            System.out.println(jedis.hvals("user"));// 返回map对象中的所有value [minxr,
                                                    // password]
            Iterator<String> iter = jedis.hkeys("user").iterator();
            while (iter.hasNext()) {
                String key = iter.next();
                System.out.println(key + ":" + jedis.hmget("user", key));
            }
        }
     
        /**
         * jedis操作List
         */
        @Test
        public void testList() {
            // 开始前,先移除所有的内容
            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操作Set
         */
        @Test
        public void testSet() {
            // 添加
            jedis.sadd("sname""minxr");
            jedis.sadd("sname""jarorwar");
            jedis.sadd("sname""闵晓荣");
            jedis.sadd("sanme""noname");
            // 移除noname
            jedis.srem("sname""noname");
            System.out.println(jedis.smembers("sname"));// 获取所有加入的value
            System.out.println(jedis.sismember("sname""minxr"));// 判断 minxr
                                                                    // 是否是sname集合的元素
            System.out.println(jedis.srandmember("sname"));
            System.out.println(jedis.scard("sname"));// 返回集合的元素个数
        }
     
        @Test
        public void test() throws InterruptedException {
            // keys中传入的可以用通配符
            System.out.println(jedis.keys("*")); // 返回当前库中所有的key [sose, sanme, name,
                                                    // jarorwar, foo, sname, java
                                                    // framework, user, braand]
            System.out.println(jedis.keys("*name"));// 返回的sname [sname, name]
            System.out.println(jedis.del("sanmdde"));// 删除key为sanmdde的对象 删除成功返回1
                                                        // 删除失败(或者不存在)返回 0
            System.out.println(jedis.ttl("sname"));// 返回给定key的有效时间,如果是-1则表示永远有效
            jedis.setex("timekey"10"min");// 通过此方法,可以指定key的存活(有效时间) 时间为秒
            Thread.sleep(5000);// 睡眠5秒后,剩余时间将为<=5
            System.out.println(jedis.ttl("timekey")); // 输出结果为5
            jedis.setex("timekey"1"min"); // 设为1后,下面再看剩余时间就是1了
            System.out.println(jedis.ttl("timekey")); // 输出结果为1
            System.out.println(jedis.exists("key"));// 检查key是否存在
                                                    // System.out.println(jedis.rename("timekey","time"));
            System.out.println(jedis.get("timekey"));// 因为移除,返回为null
            System.out.println(jedis.get("time")); // 因为将timekey 重命名为time 所以可以取得值
                                                    // min
            // jedis 排序
            // 注意,此处的rpush和lpush是List的操作。是一个双向链表(但从表现来看的)
            jedis.del("a");// 先清除数据,再加入数据进行测试
            jedis.rpush("a""1");
            jedis.lpush("a""6");
            jedis.lpush("a""3");
            jedis.lpush("a""9");
            System.out.println(jedis.lrange("a"0, -1));// [9, 3, 6, 1]
            System.out.println(jedis.sort("a")); // [1, 3, 6, 9] //输入排序后结果
            System.out.println(jedis.lrange("a"0, -1));
        }
    }
  • 相关阅读:
    【动态规划】51nod1780 完美序列
    【树形dp】bzoj4726: [POI2017]Sabota?
    初涉manacher
    【数位dp】bzoj3131: [Sdoi2013]淘金
    【思维题 kmp 构造】bzoj4974: [Lydsy1708月赛]字符串大师
    web框架
    Bootstrap补充
    jQuery之jQuery扩展和事件
    JQuery之文档操作
    JQuery之属性操作
  • 原文地址:https://www.cnblogs.com/beautiful-code/p/5793706.html
Copyright © 2011-2022 走看看