Redis的具体操作这里就不说了,说一下需求和设计思路。

需求:自己实现一个文章投票的功能
1.能够按照时间分页倒叙查看文章信息
2.能够给文章投票,一个用户给一篇文章只能投票一次
3.需要记录分值。每次投票后就+10分

 

思路:
1.设计一个Hash,用于存储文章的基本信息(标题、内容、创建人)。键:article:1
2.设计一个Set,用于记录一篇文章被哪些用户投过票。键:vole:1
3.设计一个ZSet,用于记录每一篇文章的分值。键:score

 

RedisUtil.java

package cn.duanjt;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

/**
 * Redis公共操作类
 * @author 段江涛
 * @date 2018-12-29
 */
public class RedisUtil {
    JedisPool pool = null;

    public RedisUtil(String host, int port) {
        JedisPoolConfig config = new JedisPoolConfig();
        config.setMaxTotal(20);
        config.setMaxIdle(5);
        config.setMaxWaitMillis(100);
        config.setTestOnBorrow(true);

        pool = new JedisPool(config, host, port);
    }
    
    public Jedis getJedis(){
        return pool.getResource();
    }
    
    public void dispose(Jedis jedis){
        pool.returnResourceObject(jedis);
    }
}
View Code

相关文章: