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);
}