您的位置:首页 > 数据库 > Redis

WEB项目,使用redis做缓存小案例

2018-03-02 15:02 483 查看
1.需求场景
展示实时数据

2.项目环境
Spring spring mvc mybatis

3.实现步骤
(1)链接redis
    public static Jedis getJedisConnection() {
        String redishost = "127.0.0.1";
        int redisport = 6379;// redis的端口
        int redistimeout = 2000;// redis超时时间
        int redisdatabase = 0;// redis的db
        Jedis jedis = null;
        try {
            jedis = new Jedis(redishost, redisport, redistimeout);
        } catch (Exception e) {
            System.out.println("连接redis报错!!");
        }
        if (redisdatabase != 0) {
            try {
                jedis.select(redisdatabase);
            } catch (Exception e) {
                System.out.println("redisdatabase error");
            }
        }
        return jedis;
    }
(2)redis写入数据public void writeRedisData(){
try{
//数据库获取数据
List<RedisEntityVO> data = RedisCaceDataService.getRedisCacheData();
//获得redis链接
Jedis jedis = getJedisConnection();
//写入数据
for(int i=0;i<data.size();i++){
jedis.set(data.get(i).getTime(),data.get(i).getAllpv());
jedis.set(data.get(i).getTime(),data.get(i).getAlluv());
jedis.set(data.get(i).getTime(),data.get(i).getAllip());
}
jedis.close();
}catch(Exception e){
}

}
(3)redis获取数据/***
*
* @Title: getRealTimeData
* @Description: TODO 每个时间点的数据
* @param data
* @return
*/
public static List<RedisEntityVO> getRealTimeData(String key){
List<RedisEntityVO> list = new ArrayList<RedisEntityVO>();
Jedis jedis = getJedisConnection();
long all_pv = 0;
long ip_num = 0;
long uv = 0;
try{
RedisEntityVO mop = new RedisEntityVO();
pv = Long.parseLong(jedis.get(key+ "_pv"));
uv = Long.parseLong(jedis.get(key+ "_uv");
ip = Long.parseLong(jedis.get(key+ "_ip_num");
e.setAllpv(Integer.parseInt(String.valueOf(all_pv)));
e.setAlluv(Integer.parseInt(String.valueOf(uv)));
e.setAllip(Integer.parseInt(String.valueOf(ip_num)));
System.out.println("pv \t"+pv+"\t ip"+ip+"\t uv"+uv);
list.add(e);
}catch(exception e){
e.printStackTrace();
}
jedis.close();
return list;
}(3)测试public static void main(String[] args) {
String time="2018030101";
RedisUtil.getRealTimeData(time);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: