Redis缓存实现数据排名

本文介绍了一个使用Redis实现的简单应用案例,通过随机选择英雄并记录其出场次数,同时展示了如何查询各英雄的出场次数及排名。此案例适用于了解Redis的基本操作及应用场景。
1.编写一个数据使用的次数方法
/**
 * @Author: wangHui
 * @Dscription:
 * @Date: Created in 19:29 2018/6/8
 **/
public class PlayTest {
    public static void main(String[] args) throws InterruptedException {
        Jedis jedis = new Jedis("127.0.0.1",6379);
        Random random = new Random();
        String[] lolHero = {"亚索","刀妹","泰隆","","","小狗"};
        while (true){
            int index = random.nextInt(lolHero.length);
            String hero = lolHero[index];
            Thread.sleep(2000);
            jedis.zincrby("lol:hero:jsv",1,hero);
            System.out.println(hero + "-----出场了-----");
        }
    }


}
2.查看每个数据被使用的次数以及数据的得分排名
/**
 * @Author: wangHui
 * @Dscription:
 * @Date: Created in 19:50 2018/6/8
 **/
public class RankTest {
    public static void main(String[] args) throws Exception{
        Jedis jedis = new Jedis("127.0.0.1",6379);
        int i = 1;
        while (true){
            Thread.sleep(3000);
            System.out.println(""+i+"次查看");
            Set<Tuple> heroRanks = jedis.zrevrangeWithScores("lol:hero:jsv",0,5);
            for (Tuple t : heroRanks) {
                System.out.println(t.getElement()+"------"+t.getScore());
            }
            i++;
            System.out.println();
            System.out.println();
            System.out.println();
            System.out.println();

        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值