redis的apl

redis的API
List练习题:

public static void main(String[] args) {
       //0、设置数据库连接池
        JedisPoolConfig config = new JedisPoolConfig();
        //设置连接池的最大连接数
        config.setMaxIdle(10);
        //设置最大空间的数量
        config.setMaxWaitMillis(3000);
        //设置最小的空间数量
        config.setMaxTotal(50);
        //链接超时间(最大等待时间)
        config.setMinIdle(5);

        //获取redis链接池
                       JedisPool jedisPool = new JedisPool("hadoop03", 6379);
        //获取redis链接对象
                       Jedis resource = jedisPool.getResource();
        //通过对象调用API

       //        1、创建两个list  名字分别为ltest1    ltest2.

        resource.rpush("ltest1", "1", "2", "3", "4", "5", "6", "7", "8", "9");
//        //查询数据
        List<String> ltest1 = resource.lrange("ltest1", 0, -1);
        for (String s : ltest1) {
            System.out.println("ltest1--"+ltest1);
        }
        //        2、Ltest1 从左到右为1 2 3 4 5 6 7 8 9,ltest2 从左到右为 f e d c b a
        resource.rpush("ltest2", "f", "e", "d", "c", "b", "a");
        //查询数据
        List<String> ltest2 = resource.lrange("ltest2", 0, -1);
        for (String s : ltest2) {
            System.out.println("ltest2--"+ltest2);
        }

        //        3、在Ltest1的3 左边插入3333
        resource.linsert("ltest1", BinaryClient.LIST_POSITION.BEFORE, "3", "3333");
        //        4、在6右边插入6666
        resource.linsert("ltest1", BinaryClient.LIST_POSITION.AFTER, "6", "6666");
        //        5、通过索引查询Ltest2 索引为3的数据
        resource.lindex("ltest2", 3);
        //        6、将ltest2的e 修改为EEE
        resource.lset("ltest2", 1, "EEE");
        //        7、只保留ltest2的EEE d c b
        resource.ltrim("ltest2", 1, 4);
        //        8、移除ltest1右边一个数据并插入ltest2的左边
        resource.rpoplpush("ltest1", "ltest2");

        resource.close();
    }

Set 练习题:

public static void main(String[] args) {
        //0、设置数据库连接池
        JedisPoolConfig config = new JedisPoolConfig();
        //设置连接池的最大连接数
        config.setMaxIdle(10);
        //设置最大空间的数量
        config.setMaxWaitMillis(3000);
        //设置最小的空间数量
        config.setMaxTotal(50);
        //链接超时间(最大等待时间)
        config.setMinIdle(5);
        //获取redis链接池
        JedisPool jedisPool = new JedisPool("hadoop03", 6379);
        //获取redis链接对象
        Jedis resource = jedisPool.getResource();
        //通过对象调用API
//        添加set 集合 setdemo1(aa,bb,cc,dd,ee,ff)    setdemo2(11,22,33,dd,ee,ff)
        resource.sadd("setd333emo1","aa","bb","cc","dd","ee","ff");
        //查询数据
        Set<String> setdemo1 = resource.smembers("setdemo1");
        for (String s : setdemo1) {
            // System.out.println(s);
        }
        resource.sadd("setdemo2","11","22","33","dd","ee","ff");
        //查询数据
        Set<String> setdemo2 = resource.smembers("setdemo4");
        for (String s : setdemo2) {
            //System.out.println(s);
        }
//        将两个集合的交集写入setdemo3
        resource.sinterstore("setdemo3","setdemo1","setdemo2");
//        将两个集合的并集写入setdemo4
        resource.sunionstore("setdemo4","setdemo1","setdemo2");
//        将setdemo2集合与setdemo1集合的差集写入setdemo5
        resource.sdiffstore("setdemo5","setdemo2","setdemo1");
//       将setdemo2内的11 移动到setdemo1内
       resource.smove("setdemo2","setdemo1","11");
//       删除setdemo1内的bb
        resource.srem("setdemo1","bb");
    }

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>demo01</groupId>
    <artifactId>demo01</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.9.0</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.14.3</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.0</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                    <!--    <verbal>true</verbal>-->
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

redis当中的Sentinel:

 public static void main(String[] args) {
        //0、设置数据库连接池
        JedisPoolConfig config = new JedisPoolConfig();
        //设置连接池的最大连接数
        config.setMaxIdle(10);
        //设置最大空间的数量
        config.setMaxWaitMillis(3000);
        //设置最小的空间数量
        config.setMaxTotal(50);
        //链接超时间(最大等待时间)
        config.setMinIdle(5);
        //哨兵信息
        HashSet<String> strings = new HashSet<>(Arrays.asList("hadoop01:26379", "hadoop02:26379", "hadoop03:26379"));
        //创建连接池
        JedisSentinelPool Pool = new JedisSentinelPool("mymaster", strings, config);
        //获取客户端
        Jedis resource = Pool.getResource();
        //执行两个命令
        resource.set("mykey","myvlaue");
        //获取key
        String mykey = resource.get("mykey");
        //打印信息
        System.out.println(mykey);
    }
发布了213 篇原创文章 · 获赞 406 · 访问量 24万+

猜你喜欢

转载自blog.csdn.net/qq_45765882/article/details/105280170