redis介绍
redis是一款高性能的非关系型数据库
一般会将数据存储在关系型数据库中,在非关系型数据库中备份存储关系型数据库的数据
redis数据结构
有5种数据结构,依次是:
String字符串
hash类型:map格式。
list列表
set集合
sortedset有序集合
redis场景
• 缓存(数据查询、短连接、新闻内容、商品内容等等)
• 聊天室的在线好友列表
• 任务队列。(秒杀、抢购、12306等等)
• 应用排行榜
• 网站访问统计
• 数据过期处理(可以精确到毫秒
• 分布式集群架构中的session分离
redis通用命令
1. keys * : 查询所有的键
2. type key : 获取键对应的value的类型
3. del key:删除指定的key value
jedis入门
package com.li.redis;
import com.li.utils.JedisUtils;
import org.junit.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class JedisDemo1 {
@Test
public void testJedis(){
Jedis jedis = new Jedis("localhost",6379);
jedis.set("username","wangwu");
jedis.close();
}
@Test
public void test2(){
Jedis jedis = new Jedis();
jedis.setex("activecode",20,"1234");
String s = jedis.get("activecode");
System.out.println(s);
}
@Test
public void test3(){
Jedis jedis = new Jedis();
jedis.hset("user","name","zhaoba");
jedis.hset("user","age","25");
Map<String, String> user = jedis.hgetAll("user");
Set<String> keys = user.keySet();
for (String key : keys) {
String s = user.get(key);
System.out.println(key+":"+s);
}
}
@Test
public void test4() {
Jedis jedis = new Jedis();
jedis.del("mylist");
jedis.lpush("mylist","a","b","cat");
jedis.rpush("mylist","dog");
String pop1 = jedis.rpop("mylist");
System.out.println(pop1);
List<String> mylist = jedis.lrange("mylist", 0, -1);
System.out.println(mylist);
}
@Test
public void test5(){
Jedis jedis = new Jedis();
jedis.sadd("myset","i","she","he","it");
Set<String> myset = jedis.smembers("myset");
System.out.println(myset);
}
@Test
public void test6(){
Jedis jedis = new Jedis();
jedis.zadd("mysorted",60,"mother");
jedis.zadd("mysorted",59,"grand");
jedis.zadd("mysorted",58,"uncle");
Set<String> mysorted = jedis.zrange("mysorted", 0, -1);
System.out.println(mysorted);
}
@Test
public void test7(){
JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
jedisPoolConfig.setMaxTotal(10);
jedisPoolConfig.setMaxIdle(5);
JedisPool jedisPool = new JedisPool(jedisPoolConfig,"localhost",6379);
Jedis resource = jedisPool.getResource();
resource.set("hi","hello");
}
@Test
public void test8(){
Jedis jedis = JedisUtils.getJedis();
jedis.set("aa","bb");
System.out.println(jedis.get("aa"));
}
}