> localhost connected!
> get name
jack
> setex code 30 1234
OK
> get code
1234
> setnx code1 114514//不可修改

> hset 001 name xm
1
> hset 001 age 22
1
> hkeys 001
name
age
> hvals 001
xm
22



package com.sky.test;import org.apache.el.parser.BooleanNode;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.connection.DataType;
import org.springframework.data.redis.core.*;import java.util.List;
import java.util.Objects;
import java.util.Set;
import java.util.concurrent.TimeUnit;@SpringBootTest
public class SpringDataRedisTest {@Autowiredprivate RedisTemplate redisTemplate;@Testpublic void testRedis(){ValueOperations valueOperations = redisTemplate.opsForValue();HashOperations hashOperations = redisTemplate.opsForHash();ListOperations listOperations = redisTemplate.opsForList();SetOperations setOperations = redisTemplate.opsForSet();ZSetOperations zSetOperations = redisTemplate.opsForZSet();}/*** 操作字符串类型*/@Testpublic void testString(){redisTemplate.opsForValue().set("city","北京");Object city = redisTemplate.opsForValue().get("city");System.out.println(city);redisTemplate.opsForValue().set("code","1234",3, TimeUnit.MINUTES);redisTemplate.opsForValue().setIfAbsent("lock","1");redisTemplate.opsForValue().setIfAbsent("lock","2");}/*** 操作hash类型*/@Testpublic void testHash(){HashOperations hashOperations = redisTemplate.opsForHash();hashOperations.put("100","name","tom");hashOperations.put("100","age","20");String name = (String) hashOperations.get("100","name");System.out.println(name);Set keys = hashOperations.keys("100");System.out.println(keys);List values = hashOperations.values("100");System.out.println(values);hashOperations.delete("100","age");}/*** 操作list类型*/@Testpublic void testList(){ListOperations listOperations = redisTemplate.opsForList();listOperations.leftPushAll("mylist","a","b","c");listOperations.leftPush("mylist","d");List mylist = listOperations.range("mylist",0,-1);System.out.println(mylist);listOperations.rightPop("mylist");Long size = listOperations.size("mylist");System.out.println(size);}/*** 操作set类型*///sadd smembers scard sinter sunion srem@Testpublic void testSet(){SetOperations setOperations = redisTemplate.opsForSet();setOperations.add("mySet1","a","b","c");setOperations.add("mySet2","a","b","d");Set members = setOperations.members("myset1");System.out.println(members);Long size = setOperations.size("mySet1");System.out.println(size);Set intersect = setOperations.intersect("mySet1","mySet2");System.out.println(intersect);Set union = setOperations.union("mySet1","mySet2");System.out.println(union);setOperations.remove("mySet1","a","b");}/*** 操作zset类型*/@Testpublic void testZSet(){ZSetOperations zSetOperations = redisTemplate.opsForZSet();zSetOperations.add("myzset", "tom", 10);zSetOperations.add("myzset", "jerry", 20);zSetOperations.add("myzset", "lucy", 30);Set zset1 = zSetOperations.range("myzset",0,-1);System.out.println(zset1);}/*** 通用命令*/@Testpublic void testCommon(){//keys exists type delSet keys = redisTemplate.keys("*");System.out.println(keys);Boolean name = redisTemplate.hasKey("*");Boolean set1 = redisTemplate.hasKey("set1");for (Object key : keys){DataType type = redisTemplate.type(key);System.out.println(type.name());}}
}