设为首页 加入收藏

TOP

Linux服务器使用Redis作为数据缓存,并用log4j2进行日志记录(九)
2023-09-23 15:44:11 】 浏览:231
Tags:Linux Redis 并用 log4j2
urn */ @Override public List<EmperorVo> getEmperorListByDynastyId(Integer dynastyId) { // 判断Redis是否存在该结果 String key = "getEmperorListByDynastyId_" + String.valueOf(dynastyId); if (redisUtil.hasKey(key)) { List<EmperorVo> emperorVoList = (List<EmperorVo>) redisUtil.get(key); System.out.println("由Redis得到" + key + "结果"); // 日志记录 log.info(new Date() + " 由Redis得到" + key + "数据"); return emperorVoList; } QueryWrapper<Emperor> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("dynasty_id", dynastyId); List<Emperor> emperorList = emperorMapper.selectList(queryWrapper); List<EmperorVo> emperorVoList = new LinkedList<>(); String nastyName = dynastyMapper.selectById(dynastyId).getName(); for (Emperor emperor : emperorList) { EmperorVo emperorVo = new EmperorVo(); BeanUtils.copyProperties(emperor, emperorVo); emperorVo.setDynastyName(nastyName); emperorVo.calculateTime(); emperorVoList.add(emperorVo); } System.out.println("由MySQL得到" + key + "结果"); // 日志记录 log.info(new Date() + " 由MySQL得到" + key + "数据"); if (redisUtil.set(key, emperorVoList, 600)) { System.out.println("Redis已存入" + key + "数据"); // 日志记录 log.info(new Date() + " Redis已存入" + key + "数据"); } return emperorVoList; } }

以“getEmperorListByDynastyId(Integer dynastyId)”方法为例,该方法是根据dynastyId获得List 对象,首先会根据方法名及dynastyIdRedis数据库中查找,若存在则直接返回,否则从MySQL数据库中读取,并将结果存入Redis数据库中然后返回。使用log.info()记录数据库读取过程,该记录会存储于info.log文件中

该网站后台的info.log日志记录如下

[00:54:31:770] [INFO] - cn.huskysir.Service.Impl.EmperorServiceImpl.getEmperorListByDynastyId(EmperorServiceImpl.java:141) - Wed Sep 20 00:54:31 CST 2023 由MySQL得到getEmperorListByDynastyId_1数据
[00:54:31:773] [INFO] - cn.huskysir.Service.Impl.EmperorServiceImpl.getEmperorListByDynastyId(EmperorServiceImpl.java:145) - Wed Sep 20 00:54:31 CST 2023 Redis已存入getEmperorListByDynastyId_1数据
[00:54:35:853] [INFO] - cn.huskysir.Service.Impl.EmperorServiceImpl.getEmperorListByDynastyId(EmperorServiceImpl.java:141) - Wed Sep 20 00:54:35 CST 2023 由MySQL得到getEmperorListByDynastyId_2数据
[00:54:35:863] [INFO] - cn.huskysir.Service.Impl.EmperorServiceImpl.getEmperorListByDynastyId(EmperorServiceImpl.java:145) - Wed Sep 20 00:54:35 CST 2023 Redis已存入getEmperorListByDynastyId_2数据
[00:54:37:363] [INFO] - cn.huskysir.Service.Impl.EmperorServiceImpl.getEmperorListByDynastyId(EmperorServiceImpl.java:123) - Wed Sep 20 00:54:37 CST 2023 由Redis得到getEmperorListByDynastyId_1数据
[00:54:38:043] [INFO] - cn.huskysir.Service.Impl.EmperorServiceImpl.getEmperorListByDynastyId(EmperorServiceImpl.java:123) - Wed Sep 20 00:54:38 CST 2023 由Redis得到getEmperorListByDynastyId_2数据
[00:54:39:214] [INFO] - cn.huskysir.Service.Impl.EmperorServiceImpl.getEmperorListByDynastyId(EmperorServiceImpl.java:123) - Wed Sep 20 00:54:39 CST 2023 由Redis得到getEmperorListByDynastyId_1数据
[00:54:39:936] [INFO] - cn.huskysir.Service.Impl.EmperorServiceImpl.getEmperorListByDynastyId(EmperorServiceImpl.java:123) - Wed Sep 20 00:54:39 CST 2023 由Redis得到getEmperorListByDynastyId_2数据

四、总结

关于SpringBoot项目配置Redis与log4j2是查询官方文档以及他人博客得到

首页 上一页 6 7 8 9 下一页 尾页 9/9/9
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇MyBatis中#和$的区别 下一篇Spring Boot虚拟线程与Webflux在J..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目