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);
}
展示实时数据
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);
}
相关文章推荐
- 在 Web 项目中使用 Redis 快速构建系统缓存(单机版/集群版)
- Golang web 开发实战之 session 缓存:如何使用 redigo 将一个结构体数据保存到 redis?
- 在Ruby On Rails项目中使用Redis做缓存数据库
- 缓存第四篇:在maven项目中使用redis实例
- 在.Net项目中使用Redis作为缓存服务
- SpringBoot+Mybatis项目使用Redis做Mybatis的二级缓存
- Golang web 开发实战之 session 缓存:如何使用 redigo 将一个结构体数据保存到 redis?
- web项目使用ehcache-web进行页面缓存或者文件压缩
- 【新手总结】在.Net项目中使用Redis作为缓存服务
- SpringBoot+Mybatis项目使用Redis做Mybatis的二级缓存的方法
- spring心得2--bean的生命周期@Spring监听器的作用@Spring初始化容器案例分析@web项目使用
- 使用Redis脚本做缓存的小案例
- 在项目开发中使用Redis作缓存
- 在.Net项目中使用Redis作为缓存服务
- IT 缓存框架:足迹第二十三步ehcache、memcache、redis数据库的使用(什么是大项目常用的缓存处理方案)
- Redis使用AOP无缝嵌套项目做缓存
- 【.net深呼吸】非 Web 项目使用缓存
- springboot项目使用redis数据库作缓存
- 【.net深呼吸】非 Web 项目使用缓存
- [置顶] 小白的web优化之路 二、实战使用redis来缓存列表信息